Обновить
Комментарии 35
Суть в том что не всегда его можно поставить… Что делать если доступа к ssh нету, xdebug не стоит, а отдебажить надо???
Значит вы как-то неправильно ведете разработку, раз попали в такую ситуацию :)
Я обновляю проекты через свн, но частенько меня просят зайти и поправить что-то, предоставляя доступ только к фтп. Не все еще знаю такие слова как svn, ssh,…
Дык слить по FTP к себе, воссоздать окружение и отлаживать, пока не надоест.

Вам не кажется, что на живом сервере ваши красивые вардампы красоты не прибавят?
в самой функии dump можно добавить:
if ($_COOKIE['super_secure_key'] == 'linux' )
Dumphper::dump($var);
Ну это несерьезно как-то без ssh что-то делать. Хотя если сайт-визитку установить или бложик на вордпрессе, то, наверно, нормально.
Я чо т не понял… если по SSH заливать, то XDebug сам на хостинге появляется ?? Или наличие SSH говорит о возможности дебага в принципе… чо за бред, короче? ))

По делу — цветовая гамма — отстой (новогоднюю ёлку имитируешь там ?). Каждый раз кликать на "+" — аналогично…
P.S. Не пиши здесь )))
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
где-то я уже видел такую штуку=) dBug =)
Спасибо, посмотрим на «конкурента» :)

Судя по всему объекты он выводит не так подробно, но зато ресурсы выводит подробно, я над ресурсами не заморачивался, их уж больно много, а делать только основные — не комильфо.

P.S. Если будет востребовано, то можно и ресурсы дописать, мне не надо было
Мне кажется, что не очень удобно показываются массивы с большой вложенностью, если нужно быстро увидеть данные во 2-3-й вложенности, то приходится делать ненужные клики.

в скрипте настраивается, количество развернутых по умолчанию уровней.
Когда то пытался написать аналог print_r на чистом PHP. Уткнулся в отслеживание зацикливаний. Пришлось добавлять в каждый пройденный элемент флажок. Впоследствие забил и просто ограничил глубину рекурсии.
А вы как отслеживаете?
Основная идея — массив со списком парентов:
Для объектов всё просто — "===" с парентами…
С массивами тяжелее — добавляю в массив элемент со случайно сгенерированным ключем и проверяю появился ли он в паренте. После проверки ключ удаляется.
Я делал такой дампер с помощью serialize — не приходится задумываться над рекурсиями и зацикливаниями. Минус — ресурсы отпадают.
Под php4, я так понимаю, не работает?

А ведь нередко там, где невозможно поставить модуль для дебага и php может быть старый…

У меня, как раз, такая ситуация. Хотя dumphper (судя по демо) очень понравился.
Можно переделать и под php4, правда с объекты там будут выводится очень просто, но думаю проблем не составит
Отлично. Если для PHP 4 версия будет, напишите ответ (чтобы мне письмо на email пришло).
С удовольствием потестирую и попользуюсь.
под какую версию PHP 4 вам надо, на какой версии тестировать?
кстати, объекты мне в php4-скриптах не надо смотреть, почему я и упомянул lite-версию.
Или так: если будете делать версию c поддержкой php4 (даже, если она будет lite, что
тоже хорошо), напишите тут RSS, на который я могу подписаться, чтобы о релизе узнать.
У Krumo есть серьезный недостаток(имхо) — его надо устанавливать, настраивать пути, мой скрипт просто подключить и пользоваться, он может лежать (и по хорошему должен) вне веб рута.
Да и объекты он выводит проще, я использую Reflection чтобы вытащить дополнительные данные о объекте и его свойствах, что часто бывает полезно.

Но спасибо за аналог, важно знать ху из ху :)
Все равно сложновато, сделайте чтобы небыло стилей, все стили прописывались внутри объектов, тогда лично я буду использовать (Просто нельзя в текущем проекте так просто вывести все те стили)
Вы пробовали подключать скрипт? Стили выводятся автоматически при первом дампе, стили выводятся самим скриптом внутри тега <style/>, и я не вижу причины, почему их нельзя так просто вывести.
Пожалуйста, перенесите в тематический блог.
Советую добавить в todo еще один пункт, а именно правильное определение длины UTF-8 строк в дампе строковой переменной, чего так не хватает в нативной функции.
Спасибо за идею, попробуем реализовать…
Задумка интересная, но как уже сказали выше — слишком цветасто и аляповато получается. На мой взгляд — это лишнее. Просто удобная табличка — этого уже хватает.
Подсветка по типам — ИМХО тоже лишнее. Всё равно отслеживать тип по цвету, скорее всего никто не будет.
Как вариант — оставить различие по цветам, например, для переменных и массивов (обьектов). В остальных случаях, мне кажется текстового указания типа (integer, string и пр.) вполне хватит для ориентации в пространстве дампа. :)
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.