php写一个数组用html表格输出这个数组

 我来答
很多游戏
高粉答主

2019-10-14 · 游戏精通者,攻略技能点满
很多游戏
采纳数:91 获赞数:386999

向TA提问 私信TA
展开全部

1、首先输入:

<?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

 }

2、然后输入

 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()

3、然后输入:

 {

  $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++)

4、然后输入:

{
$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 

 }     

}

5、然后输入:

// 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));


}

6、然后输入:

$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));


}

7、然后输入:

$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;

 }

8、然后输入:

$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 />";

?>

9、然后就完成了。

微醺生活
推荐于2017-10-15 · TA获得超过1017个赞
知道小有建树答主
回答量:386
采纳率:100%
帮助的人:270万
展开全部
<?
function out_table($in){
$str = $str_tmp = "";
foreach ($in AS $k=>$v){
if(is_array($v) ){
foreach ($v AS $k1=>$v1){
$str_tmp .= "<td>{$k1}:{$v1}</td>";
}
$str .= "<tr>{$str_tmp}</tr>";
$str_tmp = "";
}else{
$str .= "<tr><td>{$k}:{$v}</td></tr>";
}
}
$str = "<html><body><table>{$str}</table></body></html>";
echo $str;
}
$temp = array("hi1"=>'ttt', "hi2"=>array('cc1','cc2'), "hi3"=>'bbbb');
out_table($temp);
?>
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
陆小凤舞
2012-11-16 · 超过11用户采纳过TA的回答
知道答主
回答量:98
采纳率:0%
帮助的人:36.3万
展开全部
直接拼html就好了 , 然后echo输出。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
8kweb
2012-11-16 · TA获得超过365个赞
知道答主
回答量:92
采纳率:0%
帮助的人:31.5万
展开全部
楼上的AS应该是as 大写不行哦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式