Zfdebug - debug панель для zend framework, російськомовне zend framework співтовариство

Сьогодні спробував в роботі ZFDebug - панель для Zend Framework, що містить різну зневадження. Враження позитивні, тому розповім докладніше, можливо не всі ще знають про цю панель.

Панель ZFDebug виконана у вигляді плагіна для Front контролера, і виглядає як невелика компактна панель що відображається внизу сторінки. Що не маловажно, рішення кросбраузерності. На відміну наприклад від рішення для firebug про який я писав раніше.

можливості

Підтримує наступні можливості:

Якщо у вас версія ZF 1.8 вставте наступний код в ваш bootstrap файл:

Якщо у вас версія ZF нижче 1.8 використовуйте наступний код:

Змінна $ options може бути масивом або об'єктом Zend_Config з наступними ключами

  • z-index: Розташування панелі (255, top)
  • image_path: Шлях до іконок для панелі (якщо переданий null для формування зображень використовується base64 кодування)
  • jquery_path: Шлях до JQuery
  • plugins: Список додаткових плагінів.

У мене все завелося досить швидко.

До речі в скачуваної архіві є ще плагін Auth, але він, мабуть, ще не доведений до потрібної кондиції тому не працює.

При бажанні можна розширити панель своїми плагінами.

І наостанок, кілька скріншотів панелі в дії:

У мене працює через раз, а точніше працює-працює, потім злітає - тому я тимчасово його відключаю, потім обратно.согласен не зручно, але як зробити інакше поки не знайшов, і перекодуйте файли в UTF-8 (або в ту, в якій ти працюєш) пробіжить співай файлів

Можна поміняти в файлі ZFDebug \ Controller \ Plugin \ Debug.php
рядок $ response-> setBody (preg_replace (# '/ () / I # ', # '$ 1 #'. $ This -> _ headerOutput (), $ response-> getBody ())); на $ response-> setBody (str_ireplace (# '# ', $ This -> _ headerOutput (). # '# ', $ Response-> getBody ())); (Якщо у вас на сайті вишукувань особливих немає).

Можна поміняти в файлі ZFDebug \ Controller \ Plugin \ Debug.php
рядок $ response-> setBody (preg_replace (# '/ () / I # ', # '$ 1 #'. $ This -> _ headerOutput (), $ response-> getBody ())); на $ response-> setBody (str_ireplace (# '# ', $ This -> _ headerOutput (). # '# ', $ Response-> getBody ())); (Якщо у вас на сайті вишукувань особливих немає).

Корисна тулза. Використовую.

Як тоді підключити дану панель?

Для тих у кого була проблема з кодуванням. Яка злітає через раз, я не можу точно сказати з чим це пов'язано, просто подивився результуючий html і зауважив, що код плагіна вставляється відразу за тегом , а мета тег із зазначенням кодування перебувати нижче всієї цієї справи. Насправді проблеми бути не повинно, але може бути браузер не дочекавшись відповіді від google, звідки береться jquery, може з інших причин, не може правильно визначити кодування і скидає її на ту, що для нього йде за замовчуванням.

Рішення просте, підсовувати текст плагіна перед закриває тегом

Лікуємо файл ZFDebug / Controller / Plugin / Debug.php

Знаходимо метод protected function _output ($ html)

і замінюємо заміну регулярки
$ Response-> setBody (preg_replace (# '/ () / I # ', # '$ 1 #'. $ This -> _ headerOutput (), $ response-> getBody ()));

На наступну:
$ Response-> setBody (str_ireplace (# '# ', $ This -> _ headerOutput (). # '# ', $ Response-> getBody ()));

Після цього зміни браузер ставить кодування в потрібну мені без помилок.

Так само перевірте заголовок, який віддає вам сервер під назвою Content-Type, може в ньому вказується невірна кодування.

Очікував поиметь щось подібне Web Debug Toolbar від symfony.
Ну їй богу панове, це ж убозтво якесь! Причому тут Debug.

У мене, як у новачка, перше питання який виник, це якісь свідчення вважаються усереднено нормальними або максимально допустимі, якщо припустити, що можливості збільшення потужності сервера на якому розробляється програма не існує.