Здравствуйте, сейчас изучаю объекты и не пойму в чем моя ошибка. Вот листинг: Код (Text): <html> <head> <title>Учусь</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 "<pre>"; 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 "</pre>"; } } 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 "<table cellpading= \"$this->cellpadding\" border= 1>; foreach ( $this->headers as $header ) { print ( "<td bgcolor=\"$this-> bgcolor\"><b>$header</b></td>" ); } foreach ( $this->table_array as $row=>$cells ) { print "<tr>"; foreach ( $cells as $cell ) print "<td bgcolor=\"$this-> bgcolor\"> $cell </td>"; print "</tr>"; } print "</table>"; } } $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> Интерпретатор выводит на данный листинг вот эту ошибку: Код (Text): Parse error: syntax error, unexpected T_STRING in Z:\home\localhost\www\list08-09.php on line 69 А я что-то совсем не пойму, где у меня синтаксическая ошибка...
понятно, что в 69 строке, но вот где и что? Долго и упорно смотрел я на эту 69 строку, так и не понял в чем ошибка Код (Text): print ( "<td bgcolor=\"$this-> bgcolor\"><b>$header</b></td>" );
в смысле пробел? убрал все пробелы, ошибка не исчезла Код (Text): print ("<td bgcolor=\"$this->bgcolor\"><b>$header</b></td>");
не пойму, хоть убей )) Код (Text): print ("<td bgcolor=\"{$this->bgcolor}\"><b>$header</b></td>"); все равно ошибка в 69 та же... а зачем нужно записывать специальный указатель $this и обращение к свойству bgcolor в фигурные скобки?