PHP/HTML/Table Utilities
The Table and HTMLTable Classes
<source lang="html4strict">
/* 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
- /
<html> <head> <title>testing objects</title> </head> <body> <?php class Table{
var $table_array = array(); var $headers = array(); var $cols; function Table( $headers ){ $this->headers = $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 "<B>$header</B> "; 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 "
bgcolor\">$header | ";
bgcolor\">$cell | "; 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(); ?> </body> </html>
</source>
The Table Class
<source lang="html4strict">
/* 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
- /
<html> <head> <title>The Table Class</title> </head> <body> <?php class Table{
var $table_array = array(); var $headers = array(); var $cols; function Table( $headers ){ $this->headers = $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 ){ $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); return true; } function output(){print "
"; foreach ( $this->headers as $header ) print "<B>$header</B> "; print "\n"; foreach ( $this->table_array as $y ) { foreach ( $y as $xcell ) print "$xcell "; print "\n"; } print "";
}
} $test = new table( array("a","b","c") ); $test->addRow( array(1,2,3) ); $test->addRow( array(4,5,6) ); $test->addRowAssocArray( array ( b=>0, a=>6, c=>3 ) ); $test->output(); ?> </body> </html>
</source>