php函数代码:以表格形式输出二维数组

已于2012-01-16更新:对于元素为数组的,也以表格输出(否则将数组子元素显示为array)

直接上代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>以表格形式输出二维数组</title>
</head>

<body>
<?php
$comment[100]=array('id'=>100,'parent'=>0,'content'=>'AAAAAAAAAA');
$comment[101]=array('id'=>101,'parent'=>100,'content'=>'BBBBBBBBB');
$comment[102]=array('id'=>102,'parent'=>100,'content'=>'CCCCCCCCCC');
$comment[103]=array('id'=>103,'parent'=>0,'content'=>'DDDDDDDDDDd');
$comment[104]=array('id'=>104,'parent'=>102,'content'=>'EEEEEEEE');
$comment[105]=array('id'=>105,'parent'=>101,'content'=>'FFFFFFFFF');
$comment[106]=array('id'=>106,'parent'=>0,'content'=>'GGGGGGGG');
$comment[107]=array('id'=>107,'parent'=>0,'content'=>'HHHHHHHHH');
$comment[108]=array('id'=>108,'parent'=>101,'content'=>'IIIIIIIIIIII');
$comment[109]=array('id'=>109,'parent'=>105,'content'=>'JJJJJJJJJJ');
$comment[110]=array('id'=>110,'parent'=>103,'content'=>'KKKKKKKKKK');
$comment[111]=array('id'=>111,'parent'=>108,'content'=>'LLLLLLLLL');
$comment[112]=array('id'=>112,'parent'=>105,'content'=>'MMMMMMMMMM');

$data=$comment;

array_table_view($data);

function array_table_view($data)
{
?>
<table width="95%" border="1" cellspacing="0" cellpadding="4"><?php 
    if(!sizeof($data)){
?>
  <tr>
    <td>empty array.</td>
  </tr><?php 
    }else{
        foreach($data as $item){
?>
  <tr><?php 
          foreach($item as $key => $val){ ?>
    <th><?php echo $key; ?></th><?php 
            } ?>
  </tr>
<?php 
            break;
        }

        foreach($data as $item){

?>
  <tr><?php 
          foreach($item as $key => $val){ ?>
    <td><?php 
        if(is_array($val)){
            array_table_view($val);
        }else{
            echo $val;
        }
        ?></td><?php 
            } ?>
  </tr>
<?php
        }
    } ?>
</table>
<?php
}
?>
</body>
</html>

代码下载 array_table_view

代码下载 (请“复制-粘贴-保存”以上代码)

Linux系统内核代码特色

1。缩进

8个字符的长度设置为缩进的长度。这样使得你的代码更加容易阅读,并且提醒你不要nest得过深。

2。断开长的行以及长的字符串

要记住我们的代码会被屏幕只有24个字符长度的终端阅读。

3。放置大括号

这方面我们遵从C程序员的老祖宗——Kernighan and Ritchie的风格。

if (x is true) {

we do y

}

do {

body of do-loop

} while (condition);

if (x == y) {

..

} else if (x > y) {

...

} else {

....

}

定义函数时是个例外,我们这样写

int function(int x)

{

body of function

}

采用这种方式的另外一个好处是,节省空间。我们不需要为单个的括号而占用一行的空间,要知道有些人会使用很小屏幕的终端观看代码,比如PDA用户。

4。命名规则

全局的变量或函数采用描述性的名字,务尽其详。而局部函数采用缩略方式加以命名。

匈牙利命名法不被推荐。

5。函数

函数的一个推荐风格是写得短小精悍,不要超过160x24这样的长度。如果你的函数特别长,你要尽可能得断开它,使它的部分功能放置在别的函数里。如果对性能要求特别明显,那么可以把分出去的函数设置为inline。

6。宏,枚举

最好都为大写,但是宏函数例外。

7。不要滥用inline

inline函数的原则是这个函数不超过三行代码,其中的例外就是函数参数中有可以在编译时就确定的常数,而你知道因为这个常数,编译器能够加以优化从而减少函数的代码。

该规范在php程序编写时,可以借鉴,参看这里 从linux kernel coding style看php代码规范