diff options
| author | polo <ordipolo@gmx.fr> | 2022-12-20 03:31:33 +0100 |
|---|---|---|
| committer | polo <ordipolo@gmx.fr> | 2022-12-20 03:31:33 +0100 |
| commit | 7d564efbccc4b361d2fa2db2902fb35882304aae (patch) | |
| tree | efc28d94a1387f918c84201318880d74a52adf84 /src/model/Model.php | |
| parent | dedbe2f5cee33431c1299c7f0dbef4e247dc2447 (diff) | |
| download | AppliGestionPHP-7d564efbccc4b361d2fa2db2902fb35882304aae.tar.gz AppliGestionPHP-7d564efbccc4b361d2fa2db2902fb35882304aae.tar.bz2 AppliGestionPHP-7d564efbccc4b361d2fa2db2902fb35882304aae.zip | |
recherche de clients
Diffstat (limited to 'src/model/Model.php')
| -rw-r--r-- | src/model/Model.php | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/model/Model.php b/src/model/Model.php index 9effbe7..8cbf056 100644 --- a/src/model/Model.php +++ b/src/model/Model.php | |||
| @@ -12,6 +12,12 @@ class Model extends DB | |||
| 12 | $this->db = parent::getInstance(); // connexion | 12 | $this->db = parent::getInstance(); // connexion |
| 13 | } | 13 | } |
| 14 | 14 | ||
| 15 | // getters | ||
| 16 | public function getTable(): string | ||
| 17 | { | ||
| 18 | return($this->table); | ||
| 19 | } | ||
| 20 | |||
| 15 | // setters (plusieurs en même temps) | 21 | // setters (plusieurs en même temps) |
| 16 | public function hydrate(array $data) // $data = tableau associatif en entrée: nom_du_champ => valeur | 22 | public function hydrate(array $data) // $data = tableau associatif en entrée: nom_du_champ => valeur |
| 17 | { | 23 | { |
| @@ -78,17 +84,17 @@ class Model extends DB | |||
| 78 | 84 | ||
| 79 | 85 | ||
| 80 | // read SELECT | 86 | // read SELECT |
| 81 | public function readAll() // obtenir une table | 87 | public function readAll(): array // obtenir une table |
| 82 | { | 88 | { |
| 83 | $query = $this->execQuery('SELECT * FROM ' . $this->table . ';'); // fonctionne aussi sans le point virgule dans le SQL!! | 89 | return($this->execQuery('SELECT * FROM ' . $this->table)->fetchAll()); // fonctionne aussi sans le point virgule dans le SQL!! |
| 84 | return($query->fetchAll()); | ||
| 85 | } | 90 | } |
| 91 | |||
| 86 | public function findById(int $id) // obtenir une entrée avec son ID | 92 | public function findById(int $id) // obtenir une entrée avec son ID |
| 87 | { | 93 | { |
| 88 | return($this->execQuery('SELECT * FROM ' . $this->table . ' WHERE id = ' . $id)->fetch()); | 94 | return($this->execQuery('SELECT * FROM ' . $this->table . ' WHERE id = ' . $id)->fetch()); |
| 89 | } | 95 | } |
| 90 | 96 | ||
| 91 | public function find(array $criteria) // obtenir une entrée avec un tableau associatif 'champ' => 'valeur' | 97 | public function find(array $criteria): array // obtenir une entrée avec un tableau associatif 'champ' => 'valeur' |
| 92 | { | 98 | { |
| 93 | $fields = []; | 99 | $fields = []; |
| 94 | $values = []; | 100 | $values = []; |
| @@ -134,7 +140,7 @@ class Model extends DB | |||
| 134 | } | 140 | } |
| 135 | 141 | ||
| 136 | 142 | ||
| 137 | // fonction appelée une seule fois pour chaque table | 143 | // fonction appelée une seule fois au lancement du programme |
| 138 | // le tableau nécessaire n'est pas copié en mémoire à l'instanciation (pas de fuite de mémoire), mais uniquement à l'appel de cette fonction statique, à la fin de la fonction la mémoire est libérée | 144 | // le tableau nécessaire n'est pas copié en mémoire à l'instanciation (pas de fuite de mémoire), mais uniquement à l'appel de cette fonction statique, à la fin de la fonction la mémoire est libérée |
| 139 | // DBStructure::${self::$tableStructure} permet de nommer une variable statique de classe | 145 | // DBStructure::${self::$tableStructure} permet de nommer une variable statique de classe |
| 140 | static public function createTables() | 146 | static public function createTables() |
