
Doctrine ORM Grundlagen
Entities, Annotations, EntityManager, Repositories, DQL, QueryBuilder, Relationships
1Was ist Doctrine ORM im Kontext von Symfony?
Was ist Doctrine ORM im Kontext von Symfony?
Antwort
Doctrine ORM ist ein Object-Relational Mapper, der es ermöglicht, Datenbankdaten über PHP-Objekte zu manipulieren. Es abstrahiert SQL-Abfragen durch Bereitstellung einer Objektschicht und macht den Code wartbarer und portabler über verschiedene Datenbankverwaltungssysteme hinweg. Es ist das empfohlene Standard-ORM für Symfony.
2Welches PHP-8-Attribut sollte verwendet werden, um eine Klasse als Doctrine-Entity zu deklarieren?
Welches PHP-8-Attribut sollte verwendet werden, um eine Klasse als Doctrine-Entity zu deklarieren?
Antwort
Das Attribut #[ORM\Entity] wird verwendet, um Doctrine mitzuteilen, dass eine PHP-Klasse eine auf eine Datenbanktabelle gemappte Entity ist. Dieses Attribut ersetzt kommentarbasierte Annotations und ist Teil des Doctrine\ORM\Mapping-Namespaces. Es kann mit repositoryClass kombiniert werden, um ein benutzerdefiniertes Repository anzugeben.
3Wie definiert man eine auto-inkrementierte Spalte als Primary Key in einer Doctrine-Entity?
Wie definiert man eine auto-inkrementierte Spalte als Primary Key in einer Doctrine-Entity?
Antwort
Um einen auto-inkrementierten Primary Key zu definieren, müssen zwei Attribute kombiniert werden: #[ORM\Id], um die Eigenschaft als Bezeichner zu markieren, und #[ORM\GeneratedValue], um anzugeben, dass der Wert automatisch von der Datenbank generiert wird. Die Standardstrategie ist AUTO, die abhängig vom DBMS die passende Methode auswählt.
Was ist der Unterschied zwischen persist() und flush() im EntityManager?
Welches Attribut sollte verwendet werden, um eine string-Eigenschaft auf eine VARCHAR-Spalte in Doctrine zu mappen?
+22 Interview-Fragen
Weitere Symfony-Interviewthemen
Modernes PHP (8.1+)
Symfony-Grundlagen
Routing & Controllers
Twig & Templates
Symfony Formulare
Datenvalidierung
Dependency Injection & Services
Security & Authentication
Doctrine Fortgeschritten
API Platform
Serializer Component
Events & Event Subscribers
Console & Commands
Messenger Component
HTTP Client
Cache & Performance
Workflow Component
Testing Symfony
Mailer Component
Übersetzungen & i18n
EasyAdmin Bundle
Symfony-Architektur
Performance & Optimierung
Erweiterte Sicherheit
Custom Bundles
Microservices mit Symfony
Real-time & WebSockets
Deployment & DevOps
Meistere Symfony für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten