Я уже включил профилирование xDebug в моей установке XAMPP, и он отлично работает.
Теперь мне нравится спрашивать, есть ли способ сказать из моего исходного кода, когда начинать профилирование с помощью xDebug.
Более конкретно, я хотел бы создать плагин WordPress, и я хотел бы сказать, начать профилирование с начальной точки плагина и прекратить профилирование в конечной точке плагина.
Это возможно?
Примечание. Вышеприведенный пример. Это может быть плагин CakePHP или новый класс PHP, который мне может понадобиться для профилирования
Редактирование: на Включение / выключение профилирования Xdebug во время выполнения? вы не можете включить / отключить во время выполнения (например, для вызова функции).
Вы можете выборочно включить профилировщик на запрос, что обычно лучше. Для достижения такого поведения установите следующие настройки:
xdebug.profiler_enable_trigger=1 xdebug.profiler_enable=0
Обратите внимание, что мы отключили профайлер и включаем только триггер. Из вашего браузера передайте XDEBUG_PROFILE = 1
http://example.com/file.php?XDEBUG_PROFILE=1
Вы также можете передать этот параметр в POST или COOKIE. Подробнее
Как заявил Лайт, вы не можете выбрать, когда хотите, чтобы xDebug начал профилирование и когда вы хотите, чтобы он остановился. Но, еще одна функция xDebug предлагает такую гибкость: трассировку.
Профилирование и отслеживание – это не совсем одно и то же, но если вы в конечном итоге оказались здесь, возможно, что трасса может удовлетворить ваши потребности.
Чтобы начать трассировку, вы должны использовать эту функцию: xdebug_start_trace()
Чтобы остановить трассировку, вы должны использовать эту функцию: xdebug_stop_trace()
Существует множество настроек, которые вы можете использовать для изменения поведения трассировки: