abstract class db_table {
static function get_all_rows() {
...
while(...) {
$rows[] = new self();
...
}
return $rows;
}
}
class user extends db_table {
}
$rows = user::get_all_rows();
Je veux créer des instances d'une classe à partir d'une méthode statique définie dans la classe mère abstraite, mais PHP me dit « Erreur fatale: Impossible instancier classe abstraite .. "Comment dois-je l'implémenter correctement? Edit: Bien sûr, je veux créer des instances de la classe "user" dans ce cas, pas de la classe abstraite. Donc je dois le dire pour créer une instance de la sous-classe appelée.Créer une nouvelle instance dans une fonction statique d'une classe abstraite
Merci! J'ai bien travaillé. – arno
Indice: La classe get_called_class peut être émulée en PHP <5.3 en utilisant ce code: http://www.php.net/manual/fr/function.get-called-class.php#93799 – arno