9
Замена var_dump и print_r
Рубрики: Bugs, PHP, ОтладкаХочу представить свой велосипед: “dumper”, он умеет отображать:
Простые скалярные типы и null;
Массивы;
Объекты;
Ресурсы GD (Изображения);
Хочу представить свой велосипед: “dumper”, он умеет отображать:
Простые скалярные типы и null;
Массивы;
Объекты;
Ресурсы GD (Изображения);
Изначально были “вылезли” проблемы с функцией округления: в место ожидаемого float “0″, выдает float “-0″. Это поведение ожидаемо и описано на bugs.php.net, это так называемый bogus #16551 и связан с особенностью исчисления чисел с плавающей точкой.
Похожий баг нашелся совсем не в математической функции, а в строковой: number_format. Пример: в место ожидаемого string “0.0″ выдаст string [...]
Неожиданные для многих результаты при операторах <, >, <= и >= со значением NULL. Данные результаты я также опубликовал на php.net. Может в будущем включат эти таблицы и в документацию.
До осмотра таблиц, важно знать и понимать типы переменных и их значения. К примеру, “42″ — строка, в то время как 42 [...]
Периодически возникает вопрос где взять “ископаемые” версии браузеров или “редкие” браузеры например links под win32. Одна только установка IE на одной машине большая тема вызывающая множество дискуссий. Вот хороший архив браузеров http://browsers.evolt.org/. Тут представлен полный “зоопарк” браузеров под различные операционные системы. Вот например линейка IE: 1.0, 1.5, 2.0, 3.0, 3.02, 4.01, 4.01_SP1, 4.01_SP2, 5.0, 5.01, [...]
Все web программисты используют для отладки конструкции типа print ‘<pre>’.print_r($var,1).’</pre>’ в разных модификациях, и после сотого (у некоторых первого) проекта возникает закономерное желание «Если я создаю инструменты для других, почему бы не создать инструмент для себя?». В итоге, я не исключение, появляются функции:
<?
function p($var) {
print ‘<pre>’. htmlspecialchars(print_r($var, true)).’</pre>’;
}
?>
У меня функция стала называться «p», это короткое [...]