Наверное, каждому когда-нибудь приходилось использовать встроенные функции var_dump или print_r .
Они крайне неудобны в использовании; чтобы прочитать дамп, вам нужно было либо фреймировать вызовы этих функций с помощью
tag или посмотрите исходный код страницы.Более того print_r не предоставляет информацию о типе переменных, но var_dump Не так давно зависало при отображении рекурсивных массивов.
Поэтому я решил написать свой дамп, который бы повторял все, что умеют описанные выше функции, а также добавлял дополнительную информацию об объектах и их свойствах и делал дамп удобным для чтения/изучения.
Недавно я подумал, а почему бы не поделиться кодом с общественностью.
Я ленивый человек, поэтому долго не заморачивался переписыванием кода (старый код был «вонючий»), а чтобы написать статью нужно иметь время и желание.
Я пока не нашел времени на создание страницы проекта на своем сайте, как и на создание самого сайта, все из-за той же лени.
Что уже работает
- настоящая свалка — цветная подсветка типов — свертывание/развертывание массивов/объектов — определение рекурсии массивов/объектов — в пределах одного вызова сбрасывается только первое упоминание конкретного экземпляра объекта; при повторном обнаружении экземпляра размещается ссылка на его первое упоминание, которая при нажатии находит и расширяет его - состоит только из себяЧто в планах
— ввести расчет экземпляров для массивов (с функционалом, аналогичным объектам), с возможностью отключения этой ресурсоемкой операции.
Известные ошибки
— в PHP 5.2 отображаются копии непубличных свойств объекта (пока нет идей, как это исправить, поскольку они получаются путем преобразования их в массив).
Краткая демонстрация доступна по адресу widowmaker.kiev.ua/dumper.html
Загрузите исходный код из Google Code
Вместо ПС
0. Нужна ли тебе такая вещь? 1. Какую лицензию вы рекомендуете? 2. Как лучше провести рефакторинг кода (код мне не нравится), но чтобы не было сотен объектов? 3. Переехать в блог PHP? 4. Идеи по исправлению ошибки, предложения и критика приветствуются.Обновлять Насколько я понимаю, за них проголосовали отрицательно, потому что вопрос «почемуЭ» не описано.
Отвечу: потому что не всегда есть возможность установить модуль для отладки (например, нет ssh), но этот скрипт написан на PHP, и его можно просто загрузить по FTP. Теги: #php #dump #dumper #var_dump #php
-
Руководство По Безопасности Wordpress
19 Oct, 24 -
Создатель Android Покинул Google
19 Oct, 24 -
Как Я Пытался Взломать Биткойн
19 Oct, 24