XDebug если при отладке вам надоели echo(), var_dump() и print_r(). Часть 2.
Официальный сайт по проекту - http://www.xdebug.org
Параметры настройки, в скобках указана версия (например, Xdebug 2) - http://www.xdebug.org/docs-settings.php
Документация - http://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)
Пример настройки:
#Изменить пути к логу на свои (+создать директорию для лога)
#путь к логу 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
Полный список настроек.
Вспомогательный файл для получения профайл-лога через GET-параметр и просмотра WinCacheGrind (скачать), оригинал кода был взят год назад с форума dklab
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии


о! моя
о! моя заметочка ))
хорошая подборка статей по XDebug.
желаю развития этому сайту :)