class Table
{
var $Align;
var $Width;
var $Height;
var $Style_ClassName;
var $BgColor;
var $Spacing;
var $Padding;
var $Table_Id;
/*
+-------------------------
| 功能:表格初始化属性
+-------------------------
*/
function Table()
{ $this->Table_Id            = '';
$this->Align               = 'center';
$this->Width               = '100%';
$this->Height              = '';
$this->Style_ClassName     = 'black91';
$this->BgColor             = '#666666';
$this->Spacing             = 1;
$this->Padding             = 1;
}//end Table
/*
+------------------------
| 功能:设置表格属性
+------------------------
*/
function Set_Table($Id,$Is_Have_Border,$Align,$Width,$Height,$Css_Name,$Border_Color,$Bg_Color,$Spacing,$Padding)
{
if ($Is_Have_Border)
$this->Border=1;
else
$this->Border=0;
$this->Table_Id            = $Id;
$this->Align               = $Align;
$this->Width               = $Width;
$this->Height              = $Height;
$this->Style_ClassName     = $Css_Name;
$this->BgColor             = $Bg_Color;
$this->Spacing             = $Spacing;
$this->Padding             = $Padding;
}//end Set_Table

/*
+------------------------
| 功能:创建一个表格头
+------------------------
*/
function Create_Table_Head($Caption,$Width,$Height,$Css_Name,$Bg_Color,$Align='center',$Valign='middle')
{
$this->TableHead_Td_Caption[]           = $Caption;
$this->TableHead_Td_Align[]             = $Align;
$this->TableHead_Td_Valign[]            = $Valign;
$this->TableHead_Td_Width[]             = $Width;
$this->TableHead_Td_Height[]            = $Height;
$this->TableHead_Td_Style_ClassName[]   = $Css_Name;
$this->TableHead_Td_Bg_Color[]          = $Bg_Color;
}//end Create_Table_Head /*
+------------------------
| 功能:创建一个表格行tr
+------------------------
*/
function Create_Table_Tr($Id='',$Css_Name='',$Bg_Color='',$Height='',$Event_List='',$Align='center',$Valign='middle')
{
$this->TableTr_Id[]                  = $Id;
$this->TableTr_Align[]               = $Align;
$this->TableTr_Valign[]              = $Valign;
$this->TableTr_Style_ClassName[]     = $Css_Name;
$this->TableTr_Bg_Color[]            = $Bg_Color;
$this->TableTr_Height[]              = $Height;
$this->TableTr_Event_List[]          = $Event_List;

}//end Create_Table_Tr
/*
+------------------------
| 功能:创建一个表格小格td
+------------------------
*/
function Create_Table_Td($row,$Caption='',$Width='',$Height='',$Css_Name='',$Bg_Color='',$Event_List='',$Align='left',$Valign='middle',$ColSpan=1)
{
$this->TableTd_Caption[$row][]             = $Caption;
$this->TableTd_Align[$row][]               = $Align;
$this->TableTd_Valign[$row][]              = $Valign;
$this->TableTd_Width[$row][]               = $Width;
$this->TableTd_Height[$row][]              = $Height;
$this->TableTd_Style_ClassName[$row][]     = $Css_Name;
$this->TableTd_Bg_Color[$row][]            = $Bg_Color;
$this->TableTd_Event_List[$row][]          = $Event_List;
$this->TableTd_ColSpan[$row][]    = $ColSpan;
}//end Create_Table_Td
/*
+------------------------
| 功能:画出表格头
+------------------------
*/
function Draw_TableHead()
{
$Col_Nums  = count($this->TableHead_Td_Caption);      //列数
echo "<tr>\n";
for ($i=0;$i<$Col_Nums;$i++)
{
echo "  <Td ";
//如果有设样式单,则显示
if (trim($this->TableHead_Td_Style_ClassName[$i])!="")
echo "class='".$this->TableHead_Td_Style_ClassName[$i]."'";

//如果有设宽度
if (trim($this->TableHead_Td_Width[$i])!="")
echo " width='".$this->TableHead_Td_Width[$i]."'";

//如果有设高度
if (trim($this->TableHead_Td_Height[$i])!="")
echo " height='".$this->TableHead_Td_Height[$i]."'";

//如果有设水平与垂直对齐方式
echo " align='".$this->TableHead_Td_Align[$i]."' ";
echo " valign='".$this->TableHead_Td_Valign[$i]."' ";

//如果有设背景
if (trim($this->TableHead_Td_Bg_Color[$i])!='')
echo "bgcolor='".$this->TableHead_Td_Bg_Color[$i]."'";
//如果有设表头文字
if (trim($this->TableHead_Td_Caption[$i])!='')
echo ">".$this->TableHead_Td_Caption[$i]."</td>\n";
else
echo ">&nbsp;</td>\n";
}//end for
}//end Draw_TableHead

解决方案 »

  1.   

    /*
    +------------------------
    | 功能:画出表格行tr
    +------------------------
    */
    function Draw_Table_Body()
    {
    //先得到行数与列数
    $Col_Nums  = count($this->TableHead_Td_Caption);    //列数
    $Row_Nums  = count($this->TableTd_Caption);         //列数
    for ($i=0;$i<$Row_Nums;$i++)
    {
    echo "<tr ";
    //如果有设id
    if (trim($this->TableTr_Id[$i])!="")
    echo " id='".$this->TableTr_Id[$i]."' "; //如果有设样式单,则显示
    if (trim($this->TableTr_Style_ClassName[$i])!="")
    echo "class='".$this->TableTr_Style_ClassName[$i]."' "; //如果有设高度
    if (trim($this->TableTr_Height[$i])!="")
    echo " height='".$this->TableTr_Height[$i]."' ";

    //如果有设水平与垂直对齐方式
    echo " align='".$this->TableTr_Align[$i]."' ";
    echo " valign='".$this->TableTr_Valign[$i]."' ";

    //如果有设事件
    if (trim($this->TableTr_Event_List[$i])!='')
    echo " ".$this->TableTr_Event_List[$i]." "; //如果有设背景
    if (trim($this->TableTr_Bg_Color[$i])!='')
    echo "bgcolor='".$this->TableTr_Bg_Color[$i]."' ";
    echo ">\n"; //显示各个列-------------------
    for($j=0;$j<$Col_Nums;$j++)
    {
    echo "  <td ";
    //如果有设样式单,则显示
    if (trim($this->TableTd_Style_ClassName[$i][$j])!="")
    echo "class='".$this->TableTd_Style_ClassName[$i][$j]."'";

    //如果有设宽度
    if (trim($this->TableTd_Width[$i][$j])!="")
    echo " width='".$this->TableTd_Width[$i][$j]."'";

    //如果有设高度
    if (trim($this->TableTd_Height[$i][$j])!="")
    echo " height='".$this->TableTd_Height[$i][$j]."'";

    //如果有设水平与垂直对齐方式
    if (trim($this->TableTd_Align[$i][$j])!='')
    echo " align='".$this->TableTd_Align[$i][$j]."' ";

    if (trim($this->TableTd_Valign[$i][$j])!='')
    echo " valign='".$this->TableTd_Valign[$i][$j]."' "; //如果有设事件
    if (trim($this->TableTd_Event_List[$i][$j])!='')
    echo $this->TableTd_Event_List[$i][$j]; //如果有设背景
    if (trim($this->TableTd_Bg_Color[$i][$j])!='')
    echo "bgcolor='".$this->TableTd_Bg_Color[$i][$j]."' "; //如果有设跨列
    if (intval($this->TableTd_ColSpan[$i][$j])>1)
    echo " colspan='".$this->TableTd_ColSpan[$i][$j]."' ";
    echo ">";
    //如果有设表格文字
    if (trim($this->TableTd_Caption[$i][$j])!='')
    echo $this->TableTd_Caption[$i][$j];
    else
    echo "&nbsp;";
    echo "</td>\n";
    //如果有设跨列
    if (intval($this->TableTd_ColSpan[$i][$j])>1)
    $j=$j + intval($this->TableTd_ColSpan[$i][$j]);
    }//end for j--列
    }//end for i--行
    }//end Draw_Table_Body /*
    +-------------------------
    | 功能:画出整个表格
    +-------------------------
    */ function Draw_Table()
    {
    echo "<table ";
    //显示该表的id
    if (trim($this->Table_Id)!='')
        echo " id='$this->Table_Id' ";

    //显示对齐方式
    if (trim($this->Align)!='')
        echo " align='$this->Align' "; //显示宽度
    if (trim($this->Width)!='')
        echo " width='$this->Width' "; //显示高度
    if (trim($this->Height)!='')
    echo " height='$this->Height' "; //显示样式单
    if (trim($this->Style_ClassName)!='')
    echo " class='$this->Style_ClassName' "; //显示背景色
    if (trim($this->BgColor)!='')
    echo " bgcolor='$this->BgColor' ";

    //显示表格间的间隔
    if (trim($this->Spacing)!='')
    echo " cellspacing='$this->Spacing' ";
    if (trim($this->Padding)!='')
    echo " cellpadding='$this->Padding' ";
    echo ">\n";
    $this->Draw_TableHead();
    $this->Draw_Table_Body();
    echo "</table>\n";
    }//end Draw_Table
    }//end class
    ?>