Используйте XDebug для отладки PHP-программ в PHPSTORM (frame/native)

PHP сервер Debug PhpStorm

Преамбула

Как инструмент отладки PHP, Xdebug предоставляет множество функций и конфигураций отладки, и вы можете визуально видеть шаг и данные о производительности исходного кода PHP, чтобы оптимизировать код PHP.

Использование phpstorm + xdebug для отладки php-программ зависит от мощной функции мониторинга IDE, которая более удобна для отладки программ.Чтобы повысить эффективность нашего кодирования, хотя var_dump, print_r и другие функции также могут предоставлять соответствующие функции, но автоматизированные инструменты могут делать больше с помощью Ниже я расскажу, как отлаживать и настраивать в соответствии с моим собственным использованием.

, один способ - использовать внешне установленную сессию, другой - настроить вход страницы в phpstorm и потом использовать встроенный монитор для доступа, принцип тот же, начнем с принципа

Принцип отладки

Настроить среду отладки

1) Настроить xdebug

Здесь используется минимальная конфигурация, и нет конфигурации для таких функций, как профиль

[xdebug]
zend_extension="/usr/local/opt/php70-xdebug/xdebug.so"
xdebug.remote_enable=1          # 启用远程调试
xdebug.remote_connect_back=1    # 忽略 remote_host 配置, 不关注主机配置, 开发者使用最舒服
xdebug.remote_port=9050         # 监听端口

УведомлениеПорт прослушивания здесь по умолчанию равен 9000, что совпадает с прослушиванием по умолчанию в php.Будьте осторожны, чтобы не использовать как можно больше 9000, чтобы избежать ситуации, когда он не подействует.

2) Установите конфигурацию phpstorm и включите мониторинг

Вот чтобы позволить phpstorm получить данные, отправленные точкой останова xdebug, прослушивая порт

2.1) Настроить порт

Здесь мы прослушиваем порт 9500, который согласуется с портом данных прослушивания конфигурации xdebug.

2.2) Включить мониторинг данных phpstorm

Переключите кнопку «Начать прослушивание соединений для отладки PHP».

3) Установите точки останова в phpstorm

Нажмите на пустое место справа от номера строки, чтобы установить точку останова.

4) Настроить сеанс отладки

Целью инструмента сеанса отладки является установка файла cookie, чтобы при каждой отправке данных файл cookie переносился, чтобы идентифицировать мониторинг.

4.1) Инструмент для установки

установить расширение для хромаXdebug helper

4.2) Щелкните значок, чтобы установить сеанс

Файл cookie установлен, ключXDEBUG_SESSION, значениеPHPSTORM, я думаю значение здесь неактуально, для phpstorm его можно мониторить.

5) Запустить страницу

Здесь мы можем видеть элемент выходного содержимого в позиции точки останова.

Другой способ: внутренний звонок

Другой способ настройки сервера здесь точно такой же, как и процесс, то есть четвертый шаг отличается от пятого.Принцип реализации заключается в том, чтобы установить работающий сервер в phpstorm, а затем автоматически установить его через отладку. РежимXDEBUG_SESSIONи автоматически включить мониторинг.

Внутренний вызов: 4) Установить сеанс отладки

4.1) Настройте сервер для веб-доступа

Например, мое локальное доменное имя здесьl.dailian.sour-lemon.com, нам нужно настроить локальный сервер, чтобы открыть эту страницу, мы сначала настраиваем сервер.

УведомлениеНастроенное здесь доменное имя — это доменное имя среды разработки, которую вы настроили локально, а номер порта — это порт, используемый для локальной разработки.l.dailian.sour-lemon.comи 80

4.2) Настройка страницы отладки

Тип страницы отладки, которую мы создаем здесь,PHP Web Application, сервер выбирает только что установленный сервер

Внутренний вызов: 5) Запустите тестовую страницу

В этом случае вышеизложенное2.2) 开启phpstorm 数据监听Этот шаг можно пропустить, здесь нет необходимости включать этот монитор.

5.1) Начать отладку

Нажмите кнопку отладки, которая автоматически откроет страницу и передаст уникальный идентификатор (возможно, идентификатор процесса) в качестве значения отладки.

Открытый URL-адрес:http://l.dailian.sour-lemon.com/?XDEBUG_SESSION_START=13608, значение здесь может быть изменено.

5.2) Просмотр панели отладки

Откройте панель отладки, вы увидите соответствующий idekey мониторинга, который совпадает с ключом, установленным на предыдущем шаге, а также настройку в файле cookie.XDEBUG_SESSIONзначение соответствует

другая помощь

1. Проверьте совместимость

При первом запуске вы можете проверить совместимость конфигурации с помощью инструментов, которые поставляются с phpstorm.

Run > Web Server Debug Validation

2. Описание панели справки по отладке

Слева
Зеленый треугольник:Resume Program, указывая, что выполнение будет продолжаться до тех пор, пока не остановится следующая точка останова.
Красная площадь:Stop, что означает прервать отладку текущей программы.

выше
Первый график показывает:Step OverПропустить текущую функцию.
Второй график:Step Into, введите программу внутри текущей функции (эквивалентно пошаговому наблюдению за выполнением программы).
На третьем рисунке показано:Force Step Into, чтобы принудительно войти в программу внутри текущей функции.
На четвертом рисунке показано:Step Out, чтобы выйти из программы внутри текущей функции.
第五个图形示 :Run to Cursorчтобы найти текущий курсор.

Описание фреймворка
Фреймы: Список загруженных файлов
Переменные: вы можете наблюдать за значениями всех глобальных переменных и текущих локальных переменных.
Часы: вы можете добавлять переменные и наблюдать за изменениями переменных по мере выполнения программы.

Справочная статья