Bonjour,
J'avais une méthode getListeDiplomesEnsfea() que j'avais créée simplement dans une classe Diplome héritant d'une classe Modele :
No problem.
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
18
19 class Diplome extends Modele { /** * diplome.getListeDiplomesEnsfea * @abstract : Donne la liste des diplômes délivrés par l'ensfea * @return : array Liste des diplômes */ public function getListeDiplomesEnsfea() { $sql = " SELECT diplomeId, diplomeLibelle FROM v_diplome_ensfea ORDER BY diplomeLibelle "; $result = $this->executerRequete($sql); return $result; }
Puis je me suis dit que je n'avais peut-être pas besoin d'instancier un objet Diplome pour avoir la liste des diplômes alors j'ai voulu passer la méthode en static :
Et là, j'obtiens cette erreur :
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 /** * diplome.getListeDiplomesEnsfea * @abstract : Donne la liste des diplômes délivrés par l'ensfea * @return : array Liste des diplômes */ public static function getListeDiplomesEnsfea() { $sql = " SELECT diplomeId, diplomeLibelle FROM v_diplome_ensfea ORDER BY diplomeLibelle "; $result = parent::executerRequete($sql); return $result; }
Apparemment, je ne peux pas appeler une méthode non statique du parent dans une méthode statique.Strict Standards: Non-static method Application\Controller\Modele::executerRequete() should not be called statically
Cette idée m'est venue parce que j'utilise une autre méthode du même genre en Ajax et je trouve un peu idiot d'instancier un objet diplome que je n'utilise finalement pas pour autre chose que d'exécuter une méthode ramenant une liste de trucs en rapport avec les diplômes.
Quelle serait la bonne manière de faire ?






Répondre avec citation



Partager