[CakePHP 3] Requête SQL dans une boucle

Par Gofast77, il y a 10 ans


Bonsoir,

Je souhaiterai savoir comment faire pour faire une requête dans une boucle. Peut-on faire un $this->Users->find()->where(['id'] => id_donner_par_l'iteration_de_la_boucle) dans la vue directement ? Si non quelle est pour vous la meilleur solution ?

1 réponse

Ferias Quarante, il y a 10 ans

Bonjour,
Si tu te bases sur l'id tu peux faire de 2 façons différentes, avec quelque chose comme çà :

// 1 - avec une boucle et un get sur l'id foreach($ids as $id) { $user = $this->Users->get($id); // traitement } // 2 - avec un find suivi d'une boucle $users = $this->Users->find('all', ['condition' => ['id IN' => $ids]]); foreach($users as $user) { // traitement }

La seconde solution est plus performante je pense étant donné qu'il n'y a qu'une seule requête.