📚 Cheatsheet

Une collection organisée de snippets de code pour accélérer votre développement. Parcourez, recherchez et copiez en un clic.

Snippets 14

Retour
Attribut d'entité (@Entity)
Facile
use Doctrine\ORM\Mapping as ORM;

#[ORM\Entity(repositoryClass: ArticleRepository::class)]
class Article { ... }
Créer une migration
Facile
php bin/console make:migration
Définir une clé primaire
Facile
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column]
private ?int $id = null;
Définir une colonne
Facile
#[ORM\Column(length: 255)]
private ?string $titre = null;
Exécuter les migrations
Facile
php bin/console doctrine:migrations:migrate
Générer une entité
Facile
php bin/console make:entity Article
Méthode de repository personnalisée
Intermédiaire
// ArticleRepository.php
public function findLatest(int $limit = 5)
{
    return $this->createQueryBuilder('a')
        ->orderBy('a.createdAt', 'DESC')
        ->setMaxResults($limit)
        ->getQuery()
        ->getResult();
}
Persister une entité
Facile
public function create(EntityManagerInterface $em): Response {
    $article = new Article();
    // ... set properties
    $em->persist($article);
    $em->flush();
}
Récupérer toutes les entités
Facile
$articles = $em->getRepository(Article::class)->findAll();
Récupérer une entité par ID
Facile
$article = $em->getRepository(Article::class)->find($id);
Relation @ManyToMany
Avancé
#[ORM\ManyToMany(targetEntity: Tag::class, inversedBy: 'articles')]
private Collection $tags;
Relation @ManyToOne
Intermédiaire
#[ORM\ManyToOne(targetEntity: Categorie::class, inversedBy: 'articles')]
#[ORM\JoinColumn(nullable: false)]
private ?Categorie $categorie = null;