Récupérer les données

La récupération des données se fait à travers l'utilisation d'un dépôt.

Doctrine propose par défaut plusieurs méthodes d'accès aux données.

  // src/Controller/DiabloController::showProfile

  $em = $this->getDoctrine()->getManager();
  $repository_profile = $em->getRepository(Profile:class);
  
   // On récupère le profile correspondant à l'identifiant
   $profile = $repository_profile->find($id);
   
   // En cas d'échec, on lance une exception
   if($profile === null)
   {
     // Exception du contrôleur Symfony
	 throw $this->createNotFoundException('Profil '.$id.' non trouvé');
   }
	

Méthodes fournies

find($id)
récupère l'entité grâce à son identifiant
findAll()
récupère toutes les entités, au sein d'un tableau
findBy(...)
récupère un tableau d'entités correspondant à des critères, classés par ordre et éventuellement paginés
$repository->findBy(array $criteres, array $orderBy = null, $limite = null, $offset = null);	
	
findOneBy(array $criteres)
récupère une seule entité
$repository->findOneBy(array('battleTag' => 'Rammstein#42'));
	
findByX($valeur)
Magic finder
Permet de faire une recherche sur un critère donc et le nom est passé dans le nom de la méthode
$repository->findByBattleTag('Rammstein#42');
	
findOneByX($valeur)
Equivalent à réponse unique de findByX($valeur)