Рубрики
Uncategorized

Отладка PHP-программ в PhpStorm с использованием Xdebug (применимы как фреймворк, так и собственный)

Автор оригинала: David Wong.

Предисловие

Xdebug, как инструмент отладки PHP, предоставляет широкие функции и конфигурации отладки. Он может интуитивно видеть пошаговые данные и данные о производительности исходного кода 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 # Enable remote debugging
Xdebug. remote_connect_back = 1 # Ignore remote_host configuration, do not care about host configuration, developers use the most comfortable
Xdebug. remote_port = 9050# listening port

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

2) Настройте конфигурацию phpstorm и включите прослушивание

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

2.1) Порт конфигурации

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

2.2) Открытое прослушивание данных phpstorm

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

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

Щелкните пробел справа от номера строки, чтобы установить точку останова

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

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

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

Установите расширение Chrome 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 Сервер выбирает сервер, который только что был настроен

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

В этом случае выше 2.2) Откройте прослушивание данных phpstorm Эти шаги можно опустить. Нет необходимости включать этого слушателя.

5.1) Запустите отладку

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

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

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

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

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

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

При первом запуске вы можете проверить совместимость конфигурации с собственными инструментами phpstorm.

Выполнить > Проверка отладки веб-сервера

2. Описание панели помощи по отладке

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

Верхний На первом рисунке показано: Перешагните Пропустите текущую функцию. На втором рисунке показано: Шаг В Программа, которая входит во внутреннюю часть текущей функции (эквивалентно пошаговому выполнению программы-наблюдателя). На третьем рисунке показано: Принудительный шаг В Для принудительного включения программ в текущую функцию. На четвертом рисунке показано: Выйдите , чтобы выйти из программы внутри текущей функции. На пятом рисунке показано: Перейдите к курсору Найдите текущий курсор.

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

Справочные статьи

  • Отладка веб-приложения с нулевой конфигурацией с помощью Xdebug и PhpStorm
  • Отладка Laravel с помощью PhpStorm и Xdebug (1)