Реклама на сайте Advertise with us
Тема: PHP: запарился искать функцию... Расширенный поиск по форуму
 
Внимание! В связи с устареванием топика эта страница была взята из кэша.
Автор Сообщение
Информация о пользователе webboxxx


Зарегистрирован: 06.03.03
Сообщения: 405
Ссылка на сообщениеДобавлено: 26/05/04 в 01:57     

короче когда во время отладки надо вывести содержимое массива на экран - можно юзать функцию print_r, что я собственно и делаю. Но вот около месяца назад то ли сам в мане наткнулся, то ли на форуме где-то увидел, альтернативу этой функции, которая выводит массив так же по элементам, но не одной строкой, а каждый элемент массива идет отдельной строкой, причем всё это с табуляцией, которая отражает иерархию массива, вобщем более приятный вариант для восприятия. Сегодня понадобилось - хоть убей не могу вспомнить... icon_sad.gif var_dump и var_export - это не то. Весь ман облазил - не могу найти.. Помню вроде в описании были такие слова, что мол эта функция дает более понятное отображение содержимого массива...

Щас уже воспользовался обычным print_r, но блин покоя не дает icon_smile.gif

K началу

 
Информация о пользователе Dr.Syshalt


Зарегистрирован: 14.05.04
Сообщения: 145
Ссылка на сообщениеДобавлено: 26/05/04 в 02:18     

Что-то я не совсем понимаю, что тебе в print_r не нравится icon_smile.gif

Вот прямо из мануала пример

Код:

<pre>
<?php
    $a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z'));
    print_r ($a);
?>
</pre>


И выводит он вот что
Код:

<pre>
Array
(
    [a] => apple
    [b] => banana
    [c] => Array
        (
            [0] => x
            [1] => y
            [2] => z
        )
)
</pre>

И оно реально так и работает icon_smile.gif

Я уж не знаю, что тебе в этом не нравится. Вроде и табуляция, и много строк. Может, ты про это самое <pre> говорил? icon_smile.gif

K началу

 
Информация о пользователе webboxxx


Зарегистрирован: 06.03.03
Сообщения: 405
Ссылка на сообщениеДобавлено: 26/05/04 в 02:28     

всё мне там нравится, но это в "чистом" ауте все с табуляцией отображается, а если в браузере смотреть - то все слеплено вместе. А там прямо для браузера (т.е. HTML) все пре-форматировано как то отображалось... бля, ну не могло же мне это присниться все таки! icon_smile.gif

K началу

 
Информация о пользователе Dr.Syshalt


Зарегистрирован: 14.05.04
Сообщения: 145
Ссылка на сообщениеДобавлено: 26/05/04 в 02:33     

Я же и говорю - посмотри на таг <pre>
Он и делает то, что тебе надо icon_smile.gif

K началу

 
Информация о пользователе webboxxx


Зарегистрирован: 06.03.03
Сообщения: 405
Ссылка на сообщениеДобавлено: 26/05/04 в 03:04     

а. вон ты про что. icon_smile.gif да, но это само собой, но я о другом - при использовании той другой функции я ничего никуда не подставлял. Мне не в напряг подставить <pre></pre> и даже обычное неформатированное отображение вполне устраивает - но вот блин знаешь такая херня бывает - пытаешься что-то вспомнить, а не можешь icon_smile.gif напрягает, хочется вспомнить во что бы то ни стало icon_smile.gif

K началу

 
Информация о пользователе Dr.Syshalt


Зарегистрирован: 14.05.04
Сообщения: 145
Ссылка на сообщениеДобавлено: 26/05/04 в 03:22     

Может, вот это спасет отца русской демократии? icon_smile.gif

Код:

  highlight_string( print_r( $input, true ) );

K началу

 
Информация о пользователе xislt


Зарегистрирован: 15.03.04
Сообщения: 594
Ссылка на сообщениеДобавлено: 26/05/04 в 04:29     

Бля несколько раз правил код - только щас понял что тебе нужно icon_smile.gif
Вот так он выводит все КРАСИВО с помощью highlight_string icon_smile.gif

Код:

function printarray($in) {
ob_start();
echo "<?\n";
print_r($in);
echo "?>";
$in = ob_get_contents();
ob_get_clean();
return highlight_string($in);
}

$myarray = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z'));

printarray($myarray);

K началу

 
Информация о пользователе webboxxx


Зарегистрирован: 06.03.03
Сообщения: 405
Ссылка на сообщениеДобавлено: 26/05/04 в 06:08     

не, ну для удобства можно и самому функцию написать чтоб в таблицу всё это пихала красиво icon_smile.gif ну нет так нет, может во сне видел, или путаю чего... но я спрашивал именно об одной функции, которая делает это все сама. все остальные способы и так знакомы icon_smile.gif сорри, если туплю.

K началу

 
Информация о пользователе Core


Зарегистрирован: 07.09.03
Сообщения: 808
Ссылка на сообщениеДобавлено: 26/05/04 в 10:32     

Из собственных закромов.

Пользовать так: Dump($любая_переменная).
показывает содержимое любой переменной, даже объектной.

Цитата:
//function for debugging, displays content of vars
function TextDump(&$Var,$Level=0)
{if(is_array($Var)) $Type="Array[".count($Var)."]";
else if(is_object($Var)) $Type="Object";
else $Type="";
if ($Type) {
echo "$Type\n";
for(Reset($Var),$Level++; list($k,$v)=each($Var);) {
if(is_array($v) && $k==="GLOBALS") continue;
for($i=0; $i<$Level*3; $i++) echo " ";
echo "<b>".HtmlSpecialChars($k)."</b> => ", TextDump($v, $Level);
}
}
else echo '"',HtmlSpecialCHars($Var),'"'."\n";
}

function Dump(&$Var) {
if((is_array($Var)||is_object($Var)) && count($Var))
echo "<pre>\n",TextDump($Var),"</pre>\n";
else
echo "<tt>",TextDump($Var),"</tt>\n";
}

K началу

 
Информация о пользователе undef


Зарегистрирован: 15.09.03
Сообщения: 357
Ссылка на сообщениеДобавлено: 26/05/04 в 14:29     

Код:

function pprint($a) {
echo '<pre>';
print_r($a);
echo '</pre>';
}

K началу

 
Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!
Внимание! В связи с устареванием топика эта страница была взята из кэша.

Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »