Оригінальний php debugger або робимо налагодження php скриптів прямо в firebug

На початку своєї PHP діяльності, та й зараз, із завидною регулярністю, завжди намагався знайти відповідний відладчик для своїх PHP скриптів, але, на жаль, у мене поки нічого не прижилося, крім банальних: echo, var_dump з print_r і error_log. Відразу зазначу, продукція Zend мені поки не по кишені і їх чарівний Zend Studio я не мацав, а так-же я в курсі про існування debug_backtrace і debug_print_backtrace.

В общем-то, для 99% випадків, вищеназваних чотирьох php операторів мені цілком вистачає, але завжди хочеться чогось більш зручного, тим більше, що для коректної роботи скрипта не завжди можливий призначений для користувача висновок і в цьому випадку доводиться обходитися простим маневром з висновком в лог помилок: error_log (..., 0).

Виявляється в світі Firefox доповнень існує дуже корисна штука: FirePHP. яка працюючи в тандемі з FireBug (тільки не кажіть, що Ви не знаєте, що це за звір), дозволяє на порядок приємніше працювати з тими самими, моїми улюбленими, чотирма операторами.

FirePHP - це неповноцінний відладчик, він позиціонується як досить простий засіб дозволяє здійснювати наочний висновок в консоль FireBug прямо з Ваших php скриптів, така можливість дозволяє не перетинатися Ваших даних для налагодження, з даними користувача виведення, особливо корисним це може виявитися при роботі з XML і JSON результатами роботи скриптів в Ajax додатках. Всі дані, що пересилаються між скриптом і консоллю, передаються через HTTP заголовок.

Власне, що таке наочний висновок Ви можете відразу побачити на наступній картинці:

Оригінальний php debugger або робимо налагодження php скриптів прямо в firebug

Для роботи з FirePHP, Вам знадобиться власне Firefox, встановлений і робочий FireBug, PHP бібліотека від FirePHP, через яку Ви будете відсилати дебаг-повідомлення і природно саме доповнення FirePHP. Останні два компоненти доступні на офіційному сайті (настійно рекомендую брати Firefox Extension звідти, тому що на Mozilla Add-ons це додаток все ще знаходиться в стані experimental і особисто я поимел досить проблем з його скачуванням, мабуть reCaptcha використовувана на сайті Mozilla Add- ons була скомпроментіровалі і я так і не зумів її набрати навіть після 4-го десятка спроб).

Про те, як запустити в роботу це диво досить добре і просто описано на самому сайті в «Бистрому старті«, в трьох фразах, для Вашого скрипта, це буде так: підключаємо саму бібліотеку (FirePHPCore / fb.php), включаємо буферизацию виведення, якщо вона вже не включена (дані то передаються через заголовок), в контрольних точках викликаємо функцію fb () з потрібними параметрами, яка відсилає повідомлення в консоль (формує HTTP заголовок).

Все досить просто, єдине, чого не вистачає для налагодження, яку тепер можна робити навіть на робочому сервері, це контролю за клієнтською частиною, тому що налагоджувальна інформація буде надсилатися на запит будь-якого клієнта. Але, тому що ми маємо одну єдину точку (процедуру) виклику fb (), ніхто не заважає нам контролювати в ній $ _SERVER [ «REMOTE_ADDR»] і тому, трохи заточивши її напилком, Ви зможете відсилати налагоджувальні повідомлення тільки на свій оцінний PC, минаючи штатні клієнтські запити . Думаю в наступних версіях FirePHP надаватиметься можливість щодо обмеження дозволених клієнтських PC.

Сама ідея FirePHP не містить в собі нічого екстраординарного, але для моїх потреб - це те, що треба, сподіваюся Вам ця «примочка» то-же сподобається.