Outils pour utilisateurs

Outils du site


symfony_4:doctrine_2:la_methode_findby_findoneby

Ceci est une ancienne révision du document !


Ce sont les deux méthodes principales de récupération :

$manager->getRepository(class::class)->findBy(array(), array())

et

$manager->getRepository(class::class)->findOneBy(array(), array())

Leurs arguments :

  • Le premier tableau permet de donner les restrictions (équivalent à WHERE )
    • Plusieurs condition sont possible, elles sont à séparer par des virgules.
    • Un ensemble de condition seront interprétés avec la condition AND WHERE
  • Le second permet de donner l'ordre de trie ( équivalent à ORDER BY)

Limitation :

  • Il est impossible de réaliser la condition OR WHERE en utilisant des virgules
  • Il est impossible d'utiliser autre chose que LIKE dans cette méthode

Exemple

Récupération des utilisateurs actifs, trié par date de création

$users = $manager->getRepository(User::class)->findBy(
   array('active'=> true), 
   array('creationDate' => 'ASC)
);

Récupération de l'utilisateur actif ayant l'id 2, trié par nom

$user = $manager->getRepository(User::class)->findOneBy(
   array('active'=> true, 'id' => 2), 
   array('name' => 'DESC)
);
symfony_4/doctrine_2/la_methode_findby_findoneby.1539850299.txt.gz · Dernière modification: 2019/12/08 08:43 (modification externe)