Classes and PHP
Let's do the table body now:
<TR>
<?php
$Tbody->TDOut("Kreisler");
$Tbody->TDOut("Rod");
$Tbody->TDOut("Cortlandt");
$Tbody->TDOut("New York");
$Tbody->TDOut("USA");
?>
</TR>
But this is still getting kind of lengthy. Couldn't we save some more steps? How about trying this:
<?php
function TROut($message) { /*And NO comments about fish, please! ;) */
PRINT "<TR>\n";
$cells=explode("|",$message);
$iterations=count($cells);
$i=0;
while ($i<$iterations) {
list($message,$span)=explode(":",$cells[$i]);
if (strlen($message)<1) $message=" ";
if ($span){
$this->TDOut ($message,$span);
}else{
$this->TDOut ($message);
}
$i++;
}
PRINT "</TR>\n";
}
?>
Wow! That's a little more complicated. Let's break it down:
Line 3 splits the message on pipes and stores the pieces in the array $cells. Line 4 stores the number of items (number of cells) in $iterations. Line 6 begins our loop to go through these cell items. Line 7 splits the cell data at the colon and stores them into the variables $message and $span. Line 8 checks to see if a message was included. If not then it sets message to the default. Line 9 checks to see if there was a span listed (i.e. the cell data had a colon with something behind it. if so, Line 10 calls TDOut with the message and the number of cells it spans. if not, Line 12 calls TDOut with just the message (TDOut will set $colspan to the default 1). Lastly, we close out the row.
What this means is we can pass a single string to TROut that will contain all the necessary information to print out the entire row as long as the string is in the format "celldata[:colspan]|celldata[:colspan]|......celldata[:colspan]".
So, instead of all the work we did before, the headers and body of the table could be called like this:
<TABLE>
<?
$Theader->TROut("Name:2|Address:3");
$Theader->TROut("First|Last|City|State/Province|Country");
$Tbody->TROut("Rod|Kreisler|Cortlandt|New York|USA");
?>
</TABLE>
Wow. That's a lot easier. But what if the data is in variables? Simply join the array:
<?php
$message=join($arry,"|");
$Tbody->TROut($message);
?>
文章来源于领测软件测试网 https://www.ltesting.net/
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073