J'ai une classe Page() que je peux utiliser pour imprimer l'en-tête (layout) avec.Comment transmettre des variables/fonctions dans une fonction de classe pour l'en-tête de la mise en page?
Avec la fonction loadHeader ($ title) je veux pouvoir l'imprimer sur toutes mes pages. Le code réel de l'en-tête est stocké dans header.inc.php.
Maintenant, avant l'en-tête, je veux aussi que certaines variables (comme celle qui maintient une connexion à la base de données) soient transmises avec lui, de sorte que je puisse la saisir sur toutes mes pages et travailler avec.
La classe ressemble un peu à ceci (amincie sur pour éviter un gâchis):
class Page{
//All vars here
function __construct(){
//constructor code
}
function loadHeader(){
$header = file_get_contents("header.inc.php");
//Some editing of the parsed $header here
//Here I want certain variables to be passed along
return $header;
}
}
Le code exact que je veux faire passer en même temps que la fonction loadHeader() est:
session_start();
include("db.class.php"); //File which contains the db_class
$db = new db_class;
$db->connect();
J'ai essayé de le faire avec eval() et heredoc dans la fonction loadHeader() mais je n'arrive pas à le faire fonctionner. Je suis désespéré!
Enfin, pour vous donner un exemple sur la façon dont je veux que mes pages au travail:
<?php
include("page.class.php");
$page = new page("Friends");
$page->loadHeader();
?>
Website content with database manipulation