Ciao bella gente
avrei qualche quesito da porvi, il primo puramente tecnico:
nelle classi, cosa signfica extends, insomma, ci aggiungo una classe, che è? Come si usa?


Inoltre, io ho un template engine, dato dalla classe template

Codice PHP:
lass template {

    var 
$tpl_element_name;

    var 
$result;

    function 
template($tpl_element_name) {

        
$this->result implode("",file("templates/"._template_."/$tpl_element_name.tpl"));
        
    }

    function 
cambia($parola1,$parola2) {

        
$this->result str_replace($parola1,$parola2,$this->result);

    }
    
    function 
cambia_link($nome_pagina,$href) {

        
$this->result str_replace($nome_pagina,"i-".str_rot13($href).".html",$this->result);

    }
    
    
    function 
stampa() {

        echo 
$this->result;

    }

Niente di eclatante. Si usa così (ci sono i vari file, overall_header.tpl, header.tpl. body.tpl):
Codice PHP:
$tpl[0] = new template("overall_header");
$tpl[0]->cambia("{KEYWORDS}",_keywords_);
$tpl[0]->cambia("{PAGETITLE}",_pagetitle_);
$tpl[0]->cambia("{DESC}",_desc_);
$tpl[0]->stampa(); 
un banale template engine.
Però la cosa si complica quando per esempio, il normale layout non va più bene e neccessito di un nuovo layout nel body, magari solo per le pagine x,y,z. E ho tutto nel file index.php.
Ho cominciato a creare una classe innerLayout, e il risultato di questa andrà nel contenuto della classe template. Posso farlo con extends?
Voi come la fareste? Ho a disposizione PHP Versione 4.4.1, un database mysql... a parole, qual'è il procedimento migliore per creare un template engine con dei layout che cambiano a pagina a pagina...