欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

两个 PHP 类:Table 和 HTMLTable

程序员文章站 2022-06-17 17:50:38
...
两个 PHP 类:Table 和 HTMLTable
/*
Code Revised from 

Sam's Teach Yourself Php, Mysql and Apache in 24 Hours 
(Sams Teach Yourself S.) (Paperback)
by Julie C. Meloni 

# Paperback: 616 pages
# Publisher: Sams (1 Jan 2004)
# Language English
# ISBN: 0672326205

*/testing objectsheaders = $headers;
        $this->cols = count ( $headers );
    }

    function addRow( $row ){
        if ( count ($row) != $this->cols )
            return false;
        array_push($this->table_array, $row);
        return true;
    }

    function addRowAssocArray( $row_assoc ) {
        if ( count ($row_assoc) != $this->cols )
            return false;
        $row = array();
        foreach ( $this->headers as $header ) {
            if ( ! isset( $row_assoc[$header] ))
                $row_assoc[$header] = " ";
            $row[] = $row_assoc[$header];
        }
        array_push($this->table_array, $row) ;
    }

    function output() {
         print "";
         foreach ( $this->headers as $header )
             print "$header  ";
         print "\n";
         foreach ( $this->table_array as $y ) {
             foreach ( $y as $xcell )
                 print "$xcell  ";
             print "\n";
         }
         print "";
     }
}

class HTMLTable extends Table{
     var $bgcolor;
     var $cellpadding = "2";
     function HTMLTable( $headers, $bg="#ffffff" ){
         Table::Table($headers);
         $this->bgcolor=$bg;
     }
     function setCellpadding( $padding ){
         $this->cellpadding = $padding;
     }
     function output(){
         print "";
         foreach ( $this->headers as $header )
             print "$header";
         foreach ( $this->table_array as $row=>$cells ) {
             print "";
             foreach ( $cells as $cell )
                 print "$cell";
             print "";
         }
         print "";
     }
}

$test = new HTMLTable( array("a","b","c"), "#00FF00");
$test->setCellpadding( 7 );
$test->addRow( array(1,2,3));
$test->addRow( array(4,5,6));
$test->addRowAssocArray( array ( b=>0, a=>6, c=>3 ));
$test->output();
?>

以上就是的内容,更多相关内容请关注PHP中文网(www.php.cn)!