Tengo establecido un directorio donde cada clase en un archivo con nomenclatura class.nombre_clase.inc.php todos dentro de un directorio inc.
El problema es que tengo una clase extendida y hace un require(); de la cual se extiende y al querer llamar a un metodo en la clase extendida me da un error.
tengo la clase base
Código PHP:
class Page{
var $titulo = "Mi pagina OPP";
var $main_content;
public function setTitle($title){
$this->titulo = $title;
}
protected function getTitle(){
return $this->titulo;
}
public function setMainContent($main){
$this->main_content = $main;
}
protected function getMainContent(){
return $this->main_content;
}
}
Código PHP:
require('class.page.inc.php');
class Print extends Page{
public function printTitle(){
return $this->getTitle(); // llamo al metodo protected
}
public function printContent(){
return $this->getMainContent(); // llamo al metodo protected
}
}
Parse error: syntax error, unexpected T_PRINT in C:\wamp\www
y este es mi index.php donde uso __autoload
function __autoload($class_name)
{
require('inc/class.'.$class_name.'.inc.php');
}
$index = new Print;
?>
<html>
<head>
<title>
<?php
$index->setTitle('mi pagina carajo');
echo $index->printTitle();
?>
</title>
</head>
<body>
<h3>Contenido</h3>
</body>
</html>
Cual podria ser el error, o solo seria problema de rutas... y otra pregunta seria si esta bien utilizada la metodologia que use en clases en archivos separado y llamar luego con __autoload