Object Collection
PublimmoPro\ObjectCollection
est une classe représentant une liste d'objets obtenue lors d'une recherche.
Initialisation
Utilisez la classe PublimmoPro\Collection
pour pouvoir faire des manipulations sur les résultats de recherche.
Exemple d'instanciation de l'objet
Il est peu probable que ceci ait besoin d'être fait à la main
En effet, la méthode query() de la classe PublimmoPro\Client retourne déjà un objet ObjectCollection.
use \PublimmoPro\ObjectCollection;
$Collection = new ObjectCollection($results, 80);
$Collection->get();
Il est plus probable que cela soit utilisé à la suite d'une requête Client.
use \PublimmoPro\Client;
$Client = new Client('2121313', 'unecle');
$Collection = $Client->setType(Client::PARKING)
->setDisponiblite(Client::AVAILABILITY_IS_AVAILABLE)
->query();
$Collection->get();
Méthodes
get()
Retourne la liste d'objets.
Paramètres
Pas de paramètres
Exemple
$Collection->get();
getTotal()
Retourne le nombre total d'objets trouvés.
Paramètres
Pas de paramètres
Exemple
$Collection->getTotal(); // 432
filter(string $filter_type, mixed $objects_to_filter)
Filtre les résultats en incluant ou excluant les identifiants d'objets indiqués.
Paramètres
Param | Type | Description |
---|---|---|
$filter_type | string | Type de filtre, accepte "include" ou "exclude" |
$objects_to_filter | mixed | identifiant de l'objet à filtrer ou tableau d'objets à filtrer |
Exemple
$Collection->filter('include', 85763)->get();
$Collection->filter('exclude', [85763, 24987])->get();
sort(mixed $instructions)
Trie les résultats selon les instructions données.
Paramètres
Param | Type | Description |
---|---|---|
$instructions | mixed | Chaîne d'instruction ou tableau de châines d'instructions |
Composition de l'instruction
Une instruction est une châine composée des trois éléments suivants :
- Le champ : nom du champ tel que décrit dans l'API
- Sens de tri : 'asc' ou 'desc'
- Type de champ : 'integer', 'float' ou 'string'
Sa syntaxe est "champ:sens:type"
.
Exemple
$Collection->sort('prix:asc:integer')->get();
$Collection->sort(['prix:asc:integer', 'pieces:desc:float'])->get();