Могу ли я вручную указать на профилировщике xdebug, чтобы начать профилирование в определенном месте?

Я уже включил профилирование xDebug в моей установке XAMPP, и он отлично работает.

Теперь мне нравится спрашивать, есть ли способ сказать из моего исходного кода, когда начинать профилирование с помощью xDebug.

Более конкретно, я хотел бы создать плагин WordPress, и я хотел бы сказать, начать профилирование с начальной точки плагина и прекратить профилирование в конечной точке плагина.

Это возможно?

Примечание. Вышеприведенный пример. Это может быть плагин CakePHP или новый класс PHP, который мне может понадобиться для профилирования

Solutions Collecting From Web of "Могу ли я вручную указать на профилировщике xdebug, чтобы начать профилирование в определенном месте?"

Редактирование: на Включение / выключение профилирования Xdebug во время выполнения? вы не можете включить / отключить во время выполнения (например, для вызова функции).

Вы можете выборочно включить профилировщик на запрос, что обычно лучше. Для достижения такого поведения установите следующие настройки:

xdebug.profiler_enable_trigger=1 xdebug.profiler_enable=0 

Обратите внимание, что мы отключили профайлер и включаем только триггер. Из вашего браузера передайте XDEBUG_PROFILE = 1

 http://example.com/file.php?XDEBUG_PROFILE=1 

Вы также можете передать этот параметр в POST или COOKIE. Подробнее

  1. http://xdebug.org/docs/profiler#starting
  2. http://xdebug.org/docs/all_settings#profiler_enable_trigger

Как заявил Лайт, вы не можете выбрать, когда хотите, чтобы xDebug начал профилирование и когда вы хотите, чтобы он остановился. Но, еще одна функция xDebug предлагает такую ​​гибкость: трассировку.

Профилирование и отслеживание – это не совсем одно и то же, но если вы в конечном итоге оказались здесь, возможно, что трасса может удовлетворить ваши потребности.

Чтобы начать трассировку, вы должны использовать эту функцию: xdebug_start_trace()

Чтобы остановить трассировку, вы должны использовать эту функцию: xdebug_stop_trace()

Существует множество настроек, которые вы можете использовать для изменения поведения трассировки:

http://xdebug.org/docs/execution_trace