Récupérer des enregistrements
Comment récupérer des données d'une table ?
Chaque collector peut appeler la méthode get ou getOne qui permet de récupérer des données avec ou sans conditions.
function get($primary_key_value = '', $order = '', $limit = '', $offset = '', $tables = '', $join = '') { }
Les paramètres
- $primary_key_value : peut être la valeur de la clé primaire OU un tableau qui regroupe les conditions de récupération.
- $order : le nom d'un champ sur lequel s'effectuera un tri par odre croissant.
- $limit : un chiffre qui déterminera le nombre maximal de résultats.
- $offset : un chiffre qui déterminera le point de départ des résultats.
- $tables : un tableau avec les noms des tables sur lesquelles l'on souhaite effectuer des jointures.
- $join : les jointures elles-mêmes.
Exemple
L'exemple suivant permet de récupérer les valeurs du collector "example" si le champ 'is_valid' est égal à 1, par ordre croissant du champ 'n_order', avec 2 résultats maximum qui commencent par 0.
$conditions = array('is_valid' => 1);
$rows = $this->collector['example']->get($conditions, 'n_order', '2', '0');
Retour de la fonction
Cette méthode retourne un tableau contenant les valeurs.
Array
(
[0] = Array
(
[id_example] = 1
[lib] = Item 1
[created_at] = 2019-05-03 14:33:10
[n_order] = 1
[is_valid] = 1
[ex_type] = EX1
)
[1] = Array
(
[id_example] = 3
[lib] = Item 3
[created_at] = 2019-05-03 14:33:21
[n_order] = 3
[is_valid] = 1
[ex_type] = EX2
)
)
Méthode getOne
La méthode getOne fonctionne de façon identique, à la seule différence que le résultat ne retourne qu'un seul enregistrement.
$rows = $this->collector['example']->getOne();
Méthode aget
Il est également possible d'utiliser la méthode aget, qui a le même retour de fonction que la méthode get. Ce sont les paramètres qui s'utilisent différemment, à savoir que les paramètres seront sous forme d'un seul tableau.
function aget($param) { }<br />
Le tableau étant défini comme suit :
$mixed = (isset($param['conditions'])) ? $param['conditions'] : '';<br />
$order = (isset($param['order'])) ? $param['order'] : '';<br />
$limit = (isset($param['limit'])) ? $param['limit'] : '';<br />
$offset = (isset($param['offset'])) ? $param['offset'] : '';<br />
$tables = (isset($param['tables'])) ? $param['tables'] : '';<br />
$join = (isset($param['join'])) ? $param['join'] : '';<br />
$search = (isset($param['search'])) ? $param['search'] : '';<br />
$id_loc = (isset($param['id_loc'])) ? $param['id_loc'] : '';<br />
$id_loc_master= (isset($param['id_loc_master'])) ? $param['id_loc_master'] : '';<br /><br />