萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> 將php數組輸出html表格的方法

將php數組輸出html表格的方法

 這篇文章主要介紹了將php數組輸出html表格的方法,需要的朋友可以參考下

   代碼如下: <?php class xtable {  private $tit,$arr,$fons,$sextra;  public function __construct()  {   $this->tit=array();       // strings with titles for first row    $this->arr=array();       // data to show on cells   $this->fons=array("#EEEEEE","#CCEEEE");  // background colors for odd and even rows   $this->sextra="";       // extra html code for table tag  }    public function extra($s)      // add some html code for the tag table  {   $this->sextra=$s;  }  public function background($arr) {if (is_array($arr)) $this->fons=$arr; else $this->fons=array($arr,$arr);}  public function titles($text,$style="") {$this->tit=$text; $this->sesttit=$style;}  public function addrow($a) {$this->arr[]=$a;}  public function addrows($arr) {$n=count($arr); for($i=0;$i<$n;$i++) $this->addrow($arr[$i]);}  public function html()  {   $cfondos=$this->fons;   $titulos="<tr>";   $t=count($this->tit);   for($k=0;$k<$t;$k++)   {    $titulos.=sprintf("<th>%s</th>",$this->tit[$k]);   }   $titulos.="</tr>";     $celdas="";   $n=count($this->arr);   for($i=0;$i<$n;$i++)   {    $celdas.=sprintf("<tr style='background-color:%s'>",$this->fons[$i%2]);    $linea=$this->arr[$i];    $m=count($linea);    for($j=0;$j<$m;$j++)     $celdas.=sprintf("<td  %s>%s</td>","",$linea[$j]);    $celdas.="</tr>";   }   return sprintf("<table cellpadding='0' cellspacing='0' border='1' %s>%s%s</table>",$this->sextra,$titulos,$celdas);  }  public function example()  {   $tit=array("Apellidos","Nombre","Telefono");    $r1=array("Garcia","Ivan","888");    $r2=array("Marco","Alfonso","555");    $x=new xtable();    $x->titles($tit);      //take titles array   $x->addrows(array($r1,$r2));   // take all rows at same time   return $x->html();     //return html code to get/show/save it   } }     // Example $t1=new xtable(); echo $t1->example()."<hr />";   $t2=new xtable(); for($i=1;$i<=10;$i+=2)  {   $t2->addrow(array("ODD",$i));   $t2->addrow(array("EVEN",$i+1));  } $t2->background(array("pink","gold")); $t2->titles(array("TYPE","#")); $t2->extra(" style='width:500px; background-color:cyan; color:navy;'"); echo $t2->html()."<hr />";   $t3=new xtable(); for($i=1;$i<=6;$i++)  {   $t3->addrow(array("5x".$i,5*$i));    } $t3->background(array("olive","maroon")); $t3->titles(array("Multiplication table","5")); $t3->extra("style='border:dotted red 10px; padding-left:4px;padding-right:4px; text-align:right;width:500px; background-color:black; color:white;'"); echo $t3->html()."<hr />";   $t4=new xtable(); $a=array("#"); for($i=1;$i<=10;$i++)  {   $a[]=$i;  } $t4->addrow($a); $t4->background(array("pink","gold")); $tit=array(); $tit[]="Numbers"; for($i=1;$i<=10;$i++) $tit[]="#"; $t4->titles($tit); $t4->extra("style='border:solid 1px silver; padding-left:4px;padding-right:4px; text-align:center;width:500px; background-color:cyan; color:navy;'"); echo $t4->html()."<hr />"; ?>  
copyright © 萬盛學電腦網 all rights reserved