XDebug
Homepage: Xdebug Module for PHP
Отладчик XDebug умеет отлаживать код удаленно.
Программное окружение: Ubuntu 12.04.1 LTS; Apache 2.2.22 64-bit Prefork; PHP 5.3.10; Zend Engine v2.3.0. Apache NetBeans IDE: Настройка, оптимизация и решение проблем IDE 7.1.2
- Установим Xdebug в Linux. После установки, при проверки версии PHP - уведим строку with Xdebug v2.1.0
# aptitude install php5-xdebug # php -v PHP 5.3.10-1ubuntu3.4 with Suhosin-Patch (cli) (built: Sep 12 2012 18:59:41) Copyright (c) 1997-2012 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies with Xdebug v2.1.0, Copyright (c) 2002-2010, by Derick Rethans - Перезапускаем Apache. Создаем на нашем сервере файл info.php содержащий <?php phpinfo(INFO_ALL); ?>. Запускаем в браузере файл info.php и ищем информацию о Xdebug
# service apache2 restart
- Так как в ОС может быть несколько Настройка файла php.ini для высоконагруженных сайтов. Находим в выводе файл info.php строку Loaded Configuration File, значение которой говорит какой именно php.ini используется Apache
Loaded Configuration File /etc/php5/apache2/php.ini
- В самый конец php.ini добавляем строки. Эти настройки позволят Обзор IDE, редакторов: Список и Анализ Инструментов Разработки NetBeans использовать Xdebug.
xdebug.remote_enable=on xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.remote_host=localhost xdebug.remote_port=9000 ;xdebug.trace_format=2 ;xdebug.show_local_vars=on
- Перезапустим Apache. Xdebug готов к отладке PHP скриптов. Для этого в NetBeans нужно открыть PHP файл и нажать Ctrl+F5 для запуска Debug.
В Настройка файла php.ini для высоконагруженных сайтов включите html_errors = On иначе Apache не будет выводить красиво данные из Xdebug.
Проще всего, что бы не менять php.ini, в начало каждого тестируемого скрипта добавить строки
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
ini_set('html_errors', 1);
Директивы Xdebug
- xdebug.var_display_max_depth — глубина дампа массивов и объетов
- xdebug.remote_enable — отладка по умолчанию включена
- xdebug.remote_host — хост, на который будут идти отладочные данные
- xdebug.remote_port — порт
- xdebug.remote_handler — может быть dbgp или php3. Это протокол передачи данных отладки. dbgp — более современный
- xdebug.idekey — идентификационный ключ, который будет посылать ваша IDE, для присоединения к отладочной сессии
- xdebug.remote_autostart — автоматический запуск отладки, без параметра запуска (подробнее в документации)
- xdebug.remote_log — лог отладки
- xdebug.profiler_enable_trigger — запуск профилирования по триггеру
- xdebug.profiler_enable — по умолчанию выключен
- xdebug.profiler_output_dir — папка, в которую будет сохраняться информация по профилированию (папка должна существовать, и должны быть установлены права доступа rw- )
- xdebug.show_local_vars — в случае возникновения не обрабатываемого исключения вместе с ошибкой будут выведены все локальные переменные
- xdebug.overload_var_dump — делает форматированный разноцветный var_dump.
Рекомендуемые обзоры инструментов
Aurorium AI: Обзор и отзывы
Инновационный браузер с поддержкой ИИ
Undetectable Browser: Честный обзор
Бесконечные профили для арбитража
Браузер Vision: Реальные отзывы
Надежное решение для мультиаккаунтинга
Dolphin {anty}: Обзор функционала
Лидер рынка для арбитражников
📌 Умный подбор сервера: Официальный инструмент проекта
DIEG — агрегатор
DIEG Finder.
Это часть единой экосистемы, созданной для того, чтобы помочь быстро найти и сравнить по параметрам подходящий VPS/VDS сервер для любых задач хостинга.
📌 Инфраструктура для разработчиков:
Для тестирования скриптов, установщиков VPN и Python-ботов рекомендуем использовать надежные VPS на короткий срок.
Подробнее о быстрой аренде VPS для экспериментов читайте здесь.