ma __construct funge?

Ciao.

Sto ricostruendo un'applicazione, riscrivendola in metodologia ad oggetti e quella che segue è la procedura per richiamare una classe.

<?php
function __autoload ($className) {
    $fileName = './class/'.strtolower($className).'.class.php';
    $status = (@include_once $fileName);
       
    if ($status === false) {
        echo "errori nella classe: $className in $fileName";
    }  
}
$pageController = 'Presentazione';
try {
  $obj = new $pageController();
  $obj->header('');
} catch (Project_Exception_AutoLoad $e) {
    header('HTTP/1.0 404 Not Found');
    printf('<h1>Not Found</h1><p>The requested page %s was not found on this server.</p><hr /><em>$id$</em>', $_SERVER['REQUEST_URI']);
}
?>

Per farla funzionare ho dovuto richiamare il metodo header() ma mi chiedo, se dentro la classe Presentazione c'è un metodo __construct() che già richiama header() a che serve richiamarlo da capo?

O meglio se non lo richiamo con $obj->header(); non si instanzia affatto?

Perché?

PS la classe è semplice in se, e gli oggetti __construct e header sono pubblici.

inviato 9 anni fa
Marco Grazia
X 0 X

Mi autorispondo :(

avevo omesso la dichiarazione $this davanti alla chiamata del metodo header() dentro __autolad() una giornata persa a cercare l'errore.

Pazienza!

 :bye:

risposto 9 anni fa
Marco Grazia
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda