Первая часть
Официальный сайт по проекту — www.xdebug.org
Параметры настройки, в скобках указана версия (например, Xdebug 2) — www.xdebug.org/docs-settings.php
Документация — www.xdebug.org/docs.php
Установка XDebug2 под Windows
1. Скачиваем расширение под нужную вам версию PHP:
— PHP 4.4.1+
— PHP 5.1.2+
— PHP 5.2.1+
2. Правим php.ini:
; путь к скачанному расширению (указать свой). если не будет работать, заменить zend_extension_ts на extension
zend_extension_ts=«C:\program files\php\extensions\php_xdebug.dll»
; включение/отключение профайлинга (1/0)
xdebug.profiler_enable = 1
; директория для результатов профайлинга (по умолчанию)
xdebug.profiler_output_dir = «c:\program files\php\tmp_xdebug»
Данные по выполнению скрипта пишутся в файл формата cachegrind (текстовый файл). Эти файлы прекрасно читает виндовая утилита WinCacheGrind.
Установка XDebug2 под Linux
1. Скачиваем исходный код
2. Правим php.ini:
; включение/отключение профайлинга (1/0)
xdebug.profiler_enable = 1
; директория для результатов профайлинга (по умолчанию)
xdebug.profiler_output_dir = "/data/home/user/projects/tmp_xdebug"
3. Дальше курим мануал :)
Настройка XDebug
Если у вас один проект, над которым вы работаете, то директивы XDebug можно прописать в файле php.ini. Они будут действовать на все проекты на вашем веб-сервере.
Если же вам нужно настроить XDebug индивидуально под каждый проект, то используйте php_value в файле .htaccess (Apache)
Пример настройки:
#Изменить пути к логу на свои (+создать директорию для лога)
<IfModule mod_php4.c>
#путь к логу XDebug
php_value xdebug.profiler_output_dir /data/home/user/your_project/tmp_xdebug
#php_value xdebug.trace_output_dir /data/home/user/your_project/tmp_xdebug
#подключаемый вспомогательный файл для виндовой утилиты WinCacheGrind (выдает профайл-лог)
#При отладке в адресной строке браузера вводить GET-параметр ?XDEBUG_PROFILE (http://yourhost/?XDEBUG_PROFILE). Открыть результат WinCacheGrind’ом
php_value php_value auto_prepend_file /data/home/user/your_project/Debug.class.php
#автотрасировка выключена
php_flag xdebug.auto_trace 0
#важная опция. При 1 — лог сохранятся, при 0 — выдается при GET-параметре XDEBUG_PROFILE (http://yourhost/?XDEBUG_PROFILE)
php_flag xdebug.profiler_enable 0
php_flag xdebug.profiler_enable_trigger 1
#собирать параметры, возвращаемые значения, переменные (0 — выключено, 1 — вкл)
#php_flag xdebug.collect_params 0
#php_flag xdebug.collect_return 0
#php_flag xdebug.collect_vars 0
#отключает обработку ошибок профайлером, 1 — включает
#php_flag xdebug.default_enable 1
#показывать в логе использование памяти между вызовами функций
php_flag xdebug.show_mem_delta 1
#1 — человекопонятный вывод лога
php_flag xdebug.trace_format 0
#timestamp — второй формат названия выходного файла
#php_value xdebug.trace_output_name crc32
php_value xdebug.profiler_output_name pid
</IfModule>
Полный список настроек.
Вспомогательный файл для получения профайл-лога через GET-параметр и просмотра WinCacheGrind (скачать), оригинал кода был взят год назад с форума dklab
Официальный сайт по проекту — www.xdebug.org
Параметры настройки, в скобках указана версия (например, Xdebug 2) — www.xdebug.org/docs-settings.php
Документация — www.xdebug.org/docs.php
Установка XDebug2 под Windows
1. Скачиваем расширение под нужную вам версию PHP:
— PHP 4.4.1+
— PHP 5.1.2+
— PHP 5.2.1+
2. Правим php.ini:
; путь к скачанному расширению (указать свой). если не будет работать, заменить zend_extension_ts на extension
zend_extension_ts=«C:\program files\php\extensions\php_xdebug.dll»
; включение/отключение профайлинга (1/0)
xdebug.profiler_enable = 1
; директория для результатов профайлинга (по умолчанию)
xdebug.profiler_output_dir = «c:\program files\php\tmp_xdebug»
Данные по выполнению скрипта пишутся в файл формата cachegrind (текстовый файл). Эти файлы прекрасно читает виндовая утилита WinCacheGrind.
Установка XDebug2 под Linux
1. Скачиваем исходный код
2. Правим php.ini:
; включение/отключение профайлинга (1/0)
xdebug.profiler_enable = 1
; директория для результатов профайлинга (по умолчанию)
xdebug.profiler_output_dir = "/data/home/user/projects/tmp_xdebug"
3. Дальше курим мануал :)
Настройка XDebug
Если у вас один проект, над которым вы работаете, то директивы XDebug можно прописать в файле php.ini. Они будут действовать на все проекты на вашем веб-сервере.
Если же вам нужно настроить XDebug индивидуально под каждый проект, то используйте php_value в файле .htaccess (Apache)
Пример настройки:
#Изменить пути к логу на свои (+создать директорию для лога)
<IfModule mod_php4.c>
#путь к логу XDebug
php_value xdebug.profiler_output_dir /data/home/user/your_project/tmp_xdebug
#php_value xdebug.trace_output_dir /data/home/user/your_project/tmp_xdebug
#подключаемый вспомогательный файл для виндовой утилиты WinCacheGrind (выдает профайл-лог)
#При отладке в адресной строке браузера вводить GET-параметр ?XDEBUG_PROFILE (http://yourhost/?XDEBUG_PROFILE). Открыть результат WinCacheGrind’ом
php_value php_value auto_prepend_file /data/home/user/your_project/Debug.class.php
#автотрасировка выключена
php_flag xdebug.auto_trace 0
#важная опция. При 1 — лог сохранятся, при 0 — выдается при GET-параметре XDEBUG_PROFILE (http://yourhost/?XDEBUG_PROFILE)
php_flag xdebug.profiler_enable 0
php_flag xdebug.profiler_enable_trigger 1
#собирать параметры, возвращаемые значения, переменные (0 — выключено, 1 — вкл)
#php_flag xdebug.collect_params 0
#php_flag xdebug.collect_return 0
#php_flag xdebug.collect_vars 0
#отключает обработку ошибок профайлером, 1 — включает
#php_flag xdebug.default_enable 1
#показывать в логе использование памяти между вызовами функций
php_flag xdebug.show_mem_delta 1
#1 — человекопонятный вывод лога
php_flag xdebug.trace_format 0
#timestamp — второй формат названия выходного файла
#php_value xdebug.trace_output_name crc32
php_value xdebug.profiler_output_name pid
</IfModule>
Полный список настроек.
Вспомогательный файл для получения профайл-лога через GET-параметр и просмотра WinCacheGrind (скачать), оригинал кода был взят год назад с форума dklab