Подтвердить что ты не робот

Как проверить определенные константы в PHP?

Я перехожу через исходный код CodeIgniter с Xdebug в NetBeans, и я ищу способ увидеть определенные константы по мере их определения. Если это невозможно, есть ли другие способы отображения всех определенных констант?

4b9b3361

Ответ 1

Посмотрите на функцию get_defined_constants. Он вернет массив всех определенных констант в коде до точки вызова функции. Затем вы можете использовать print_r для печати массива.

Ответ 2

Такая практика, которую я использую, довольно приличная, поскольку она показывает только пользовательские/пользовательские константы.

print_r(var_export(get_defined_constants(true)['user'], true));

Оберните это в предварительные теги или просто просмотрите источник, и вы получите очень хороший массив из всего, что вы определили.

Обратите внимание, что это не будет работать с php 5.3. *, где в 5.4. * он выводится нормально.

В более ранних версиях php, get_defined_constants() должен быть назначен переменной сначала, прежде чем выводить. Что-то вроде этого.

$gdc = get_defined_constants(true);
print_r( var_export($gdc['user'], true) );

Ответ 4

Лучшее, что я мог найти, - нажать F7 (шаг вперед), в то время как в режиме отладки будет выполняться ваша постоянная строка.

define('SOME_CONSTANT','VALUE');

И затем дважды щелкните "SOME_CONSTANT", щелкните правой кнопкой мыши и выберите новый чат (ярлык: shift + ctrl + F7), а окно добавления новых часов появится с константой prepopulated, выберите enter, и вы увидите постоянное значение в переменных (если у вас есть синий бриллиант, выбранный "Показывать часы внутри переменных" ) и панель окон "Часы".

Также довольно удобно знать, что вы можете навешивать на переменные, чтобы увидеть их значение, а не искать в окне "Отладка" > "Переменные"... просто нужно включить его, как это было по умолчанию... по-видимому, глючит.. используя последний xdebug, и это было хорошо для меня до сих пор.

Инструменты > Параметры > PHP > вкладка "Общие" > раздел "Отладка" > "Проверка часов и оценка воздушного шара"

Надеюсь, это по-прежнему будет полезно через 2 года.