Uncaught исключение при использовании xdebug - PullRequest
0 голосов
/ 06 мая 2010

Я не слишком хорош в xdebug, так что прости меня, если это глупый вопрос.Но я установил его на отдельную машину, и он выполнил для меня какое-то волшебство, например, форматирование вывода var_dump () и перехват всех необработанных исключений.Он также не может отформатировать трассировки стека, выводя простой текст, который чрезвычайно трудно читать.

Поскольку я изучаю Lithium PHP Framework, мне нужно использовать php5.3, на другом компьютере, который я скомпилировал изИсходный код, но на этой машине я использую предварительно скомпилированные пакеты с dotdeb.org.Насколько я могу судить, единственное отличие состоит в том, что это немного более новая версия php и она поставляется с патчем Suhosin.

Другая странная вещь заключается в том, что такие функции xdebug, как xdebug_var_dump (), работают в сторонеиз-за плохого форматирования.

Это машина с Ubuntu, поэтому я не знаю, может ли это быть что-то делать с пакетами dotdep, но я установил xdebug через pecl, загружаемый tarball и из репозитория SVN,Но безрезультатно.

Вы можете увидеть мой php.ini и вывод php -i в следующем разделе.Я скопировал php.ini из /etc/php5/apache2/php.ini в /etc/php5/cli/php.ini, чтобы php -i отражал мои настройки apache.

http://gist.github.com/391675

1 Ответ

1 голос
/ 06 мая 2010

Я считаю, что вам нужно изменить строку # 604 вашего php.ini на:

html_errors = On

Из документации Xdebug:

http://xdebug.org/docs/all_settings

xdebug.overload_var_dump

Тип: логическое значение, Значение по умолчанию: 1, Представлено в Xdebug 2.1

По умолчанию Xdebug перегружает var_dump () своей собственной улучшенной версией для отображения переменных, когда для параметра html_errors php.ini установлено значение 1. Если вы не хотите этого, вы можете установить этот параметр на 0, но сначала проверьте, если отключить html_errors не умнее.

...