положить файл определений в массив - PullRequest
1 голос
/ 02 февраля 2012

с файлом, например, со следующим:

DEFINE('INTERESTS_1','a');
DEFINE('INTERESTS_2','d');
DEFINE('INTERESTS_3','g');
DEFINE('INTERESTS_4','c');

Можно ли открыть его, поместить в массив и затем упорядочить его в ASC, повторяя все это с помощью цикла?

Ответы [ 3 ]

2 голосов
/ 02 февраля 2012
// capture constant before loading the new ones
$before = get_defined_constants();

// require_file
// require_once 'somefile';

DEFINE('INTERESTS_1','a'); // this is for testing
DEFINE('INTERESTS_2','d'); // "
DEFINE('INTERESTS_3','g'); // "
DEFINE('INTERESTS_4','c'); // "

$new = array_diff(get_defined_constants(), $before);

// sort, or do whatever you want with those values
asort($new);

// debug output
foreach ($new as $constantName => $constantValue) {
  echo $constantName, ' ', $constantValue, "\n";
}
0 голосов
/ 02 февраля 2012

Да ... Используйте $ GLOBALS для их печати и нацортируйте их http://php.net/manual/en/function.natsort.php

0 голосов
/ 02 февраля 2012

Что вы можете сделать, это использовать get_defined_constants () , а затем использовать sort () , чтобы отсортировать массив констант и, конечно же, использовать цикл foreach, чтобы отобразить то, что вы хочу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...