Вопрос

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

Это было полезно?

Решение

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

Другие советы

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

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

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

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

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

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

Вы, вероятно, хотите адаптироваться:

$arr = get_defined_vars();

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

define('SOME_CONSTANT','VALUE');

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

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

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

Надеюсь, это все еще будет полезно 2 года спустя.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top