summaryrefslogtreecommitdiff
path: root/src/model/Model.php
diff options
context:
space:
mode:
Diffstat (limited to 'src/model/Model.php')
-rw-r--r--src/model/Model.php16
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()