Bonjour,
J'ai un problème d'encapsulation dans une classe.
Voici le code simplifié de la méthode
On peut donc, dans le fichier template.php,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 class MaClasse { private $var; ... public function output() { ... ob_start(); $obj = & $this; require($this->getPath('template.php')); return ob_get_clean(); } ... }
utiliser les méthodes de la classe MaClasse via $obj.
Le truc gênant c'est qu'on peut aussi modifier directement
les attributs (qui sont private).
Y a t-il un moyen pour que $obj ne puisse
utiliser que les méthodes de la classe et pas les attributs ?
Merci
Partager