public static function obtenirTout(Condition $conditions = NULL, $offset = 0, $limite = NULL) { $listeRecords = ORM::forTable(self::nomTable()); // Prise en compte d'éventuelles conditions if ($conditions !== NULL) { $listeRecords->whereRaw($conditions->generer(), $conditions->listeValeurs()); } // Pris en compte de l'éventuel limite if ($limite !== NULL) { $listeRecords->limit($limite); } // Prise en compte de l'éventuel offset $listeRecords->offset($offset); // Récupération des résultats $listeRecords = $listeRecords->findMany(); $listeElements = array(); // On récupère le nom de la classe instanciée pour pouvoir en retourner les objets $nomClasse = get_called_class(); foreach ($listeRecords as $record) { $objet = new $nomClasse(); // Hydration de l'objet $objet->setRecord($record); // Ajout dans la liste des résultats $listeElements[] = $objet; } return $listeElements; }