Хорошая таблица php print_r

Я ищу, чтобы создать красиво отформатированную таблицу со строками и столбцами из содержимого инструкции print_r array?

Есть идеи?

Solutions Collecting From Web of "Хорошая таблица php print_r"

Ваш вопрос немного расплывчатый, но вы имели в виду что-то вроде этого:

http://dbug.ospinto.com/

dbug bar http://img.ruphp.com/php/screenshots.png

Вот очень простой способ печати довольно массивов с помощью html pre tag:

 <?php $myarray = array('a','b','c'); echo '<pre>'; print_r($myarray); echo '</pre>'; ?> 

Попробуйте это, можно улучшить, но он работает.

 function myprint_r($my_array) { if (is_array($my_array)) { echo "<table border=1 cellspacing=0 cellpadding=3 width=100%>"; echo '<tr><td colspan=2 style="background-color:#333333;"><strong><font color=white>ARRAY</font></strong></td></tr>'; foreach ($my_array as $k => $v) { echo '<tr><td valign="top" style="width:40px;background-color:#F0F0F0;">'; echo '<strong>' . $k . "</strong></td><td>"; myprint_r($v); echo "</td></tr>"; } echo "</table>"; return; } echo $my_array; } 

Вот еще один хороший пример, который я нашел. Такой же выход, более длинный код, немного больше цвета.

 function print_nice($elem,$max_level=10,$print_nice_stack=array()){ if(is_array($elem) || is_object($elem)){ if(in_array(&$elem,$print_nice_stack,true)){ echo "<font color=red>RECURSION</font>"; return; } $print_nice_stack[]=&$elem; if($max_level<1){ echo "<font color=red>nivel maximo alcanzado</font>"; return; } $max_level--; echo "<table border=1 cellspacing=0 cellpadding=3 >"; if(is_array($elem)){ echo '<tr><td colspan=2 style="background-color:#333333;"><strong><font color=white>ARRAY</font></strong></td></tr>'; }else{ echo '<tr><td colspan=2 style="background-color:#333333;"><strong>'; echo '<font color=white>OBJECT Type: '.get_class($elem).'</font></strong></td></tr>'; } $color=0; foreach($elem as $k => $v){ if($max_level%2){ $rgb=($color++%2)?"#888888":"#BBBBBB"; }else{ $rgb=($color++%2)?"#8888BB":"#BBBBFF"; } echo '<tr><td valign="top" style="width:40px;background-color:'.$rgb.';">'; echo '<strong>'.$k."</strong></td><td>"; print_nice($v,$max_level,$print_nice_stack); echo "</td></tr>"; } echo "</table>"; return; } if($elem === null){ echo "<font color=green>NULL</font>"; }elseif($elem === 0){ echo "0"; }elseif($elem === true){ echo "<font color=green>TRUE</font>"; }elseif($elem === false){ echo "<font color=green>FALSE</font>"; }elseif($elem === ""){ echo "<font color=green>EMPTY STRING</font>"; }else{ echo str_replace("\n","<strong><font color=red>*</font></strong><br>\n",$elem); } 

}