Верх страницы
Обложка к записи Отладка WordPress при помощи PHP Console
Время для прочтения: 0 мин. 24 сек.

Отладка WordPress при помощи PHP Console

PHP Console позволяет обрабатывать РНР ошибки и исключения, делать дампы перемнных, удаленно выполнять РНР-код и многие другие вещи, используя расширение для браузера Google Chrome PHP Console и серверную библиотеку PhpConsole.

Беглый обзор PHP Console

Для начала посмотрите презентационное видео с возможностями расширения.

PHP Console v3.0 Released (see in HD)PHP Console v3.0 Released (see in HD)

Также можно установить расширение PHP Console для браузера Google Chrome. и посетить демо-страницу, где можно в режиме реального времени потыкать все возможные варианты работы.

Возможности расширения PHP Chrome

  • Нет ненужных иконок на тулбаре браузера, только в адресной строке (когда включено на сервере)
  • Настраивается по нажатию на пиктограмму в адресной строке
  • PHP ошибки, исключения и дампы данных выводятся в JavaScript консоль(Ctrl+Shift+J)
    • Группировка данных по URL запроса
    • Обработка сообщений с переадресованных страниц
    • Отображение источника ошибки или исключения и трассировка
  • Вывод PHP ошибок, исключений и дампов данных в стандартные попапы уведомлений браузера
    • Автоскрытие по таймеру (опционально)
    • Переход на файл:строка в вашу IDE при клике на кнопку внутри уведомления(всё настраивается)
    • Копирование в буфер обмена по кнопке (опционально)
  • Вывод JavaScript ошибок в нотификейшены (смотрите опции)
    • Игнорирование повторяющихся ошибок
    • Игнорирование внутренних ошибок расширений Google Chrome
    • Не переопределяет пользовательские обработчики ошибок JavaScript
  • Защита паролем
  • Удалённое выполнение PHP-кода
  • Обрезает длинные пути к файлам
  • Опциональное игнорирование вывода дампа переменных по тэгу
  • Опциональное игнорирование по типу ошибок
  • Перехват ошибок со страницы, ифрейма или ajax-запросов

Более наглядно эти возможности можно увидеть на скриншотах

Возможности серверной библиотеки PHP Console

  • Connector
    • Работает с разными кодировками сервера
    • Оптимизированная инициализация(может быть испольован на серверах под нагрузками)
    • Поддерживает режим соединения только по HTTPS
    • Защита соединения только по списку разрешённых IP масок

  • Handler
    • Обработка PHP ошибок(+фатальные и лимит памяти) и исключений
    • Игнорирование одинаковых ошибок
    • Вызов определённых ранее обработчиков ошибок и исключений

  • Dumper
    • Дамп переменных любого типа
    • Дамп protected & private свойств и имени классов объектов
    • Ограничение дампов по уровню вложенности, количеству элементов, размеру элемента и дампа
    • Текстовое представление callback-ов и Closure
    • Автоопределение строки: файла и backtrace вызова дампа(опционально)

  • Auth
    • Защита соединения по паролю
    • Авторизационные токены хешируются SHA-256, с привязкой к IP клиента

  • EvalProvider
    • Удалённое выполнение PHP кода только в защищённом паролем режиме
    • Каждый запрос подписывается SHA-256 хешем от строки кода и авторизационного токена
    • Результат содержит: «output», «return» и «time» данные
    • Обработка PHP ошибок и исключений в выполняемом коде
    • Добавление переменных для быстрого доступа из кода выполняемого в терминале
    • Защита доступа к файловой системе посроедством PHP опции “open_basedir”

  • Helper — регистрирует глобальный класс PC для более короткого вызова дампа переменных
  • PsrLogger — реализация интерфейса PSR-3 логгера
  • OldVersionAdapter — для миграции с PhpConsole v1.* на v3.* без изменения кода

Зависимости

  • Расширение PHP Console
  • PHP 5.3 (или выше) на сервере.

Для проектов на PHP < 5.3 можно использовать устаревшую версию PHP Console.

Как использовать в WordPress

Установите расширение PHP Console для браузера Google Chrome и плагин WP PHP Console (зеркало) для CMS WordPress.

После установки плагина WP PHP Console зайдите в его настройки, задайте пароль доступа и включите опцию Register PC Class — регистрация класса PC в глобальном пространстве имён.

wp-php-console

В адресной строке браузера на подопытном сайте кликните на иконку ключа и вбейте туда пароль из настроек плагина. Всё готово к работе.

PHP-Console-Authorization

Теперь в любом месте вашего кода (тема или плагин) можно написать:

PC::debug( $var );

И при обновлении страницы вы увидите попап уведомления с вашей переменной:

PHP-Console-debug-var

Автор: Кобзарёв Михаил

Русский разработчик с 20-ти летним стажем. Работаю с PHP, ООП, JavaScript, Git, WordPress, Битрикс, Joomla, Drupal, Opencart, DLE, Laravel, Moonshine, SuiteCRM.

Оптимизирую сайты под Google Page Speed, настраиваю импорты для больших магазинов на WooCommerce + WP All Import. Пишу плагины на заказ. Все мои услуги.

Веду блог о разработке, дайджест в телеграмме и в ВК.

Вы всегда можете нанять меня.

Комментарии
Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Предыдущая запись

Давайте дружить
в Телеграме

Авторский блог вашего покорного слуги в Telegram про web, программирование, алгоритмы, инструменты разработчика, WordPress, Joomla, Opencart, Laravel, Moonshine, фильмы и сериалы