Welcome to Doctrine 2 ORM’s documentation!¶
The Doctrine documentation is comprised of tutorials, a reference section and cookbook articles that explain different parts of the Object Relational mapper.
Doctrine DBAL and Doctrine Common both have their own documentation.
Getting Help¶
If this documentation is not helping to answer questions you have about Doctrine ORM don’t panic. You can get help from different sources:
- There is a FAQ with answers to frequent questions.
- The Doctrine Mailing List
- Internet Relay Chat (IRC) in #doctrine on Freenode
- Report a bug on JIRA.
- On Twitter with
#doctrine2
- On StackOverflow
If you need more structure over the different topics you can browse the table of contents.
Getting Started¶
- Tutorial: Getting Started with Doctrine
- Setup: Installation & Configuration
Mapping Objects onto a Database¶
- Mapping: Objects | Associations | Inheritance
- Drivers: Docblock Annotations | XML | YAML | PHP
Working with Objects¶
- Basic Reference: Entities | Associations | Events
- Query Reference: DQL | QueryBuilder | Native SQL
- Internals: Internals explained | Associations
Advanced Topics¶
Tutorials¶
Cookbook¶
- Patterns: Aggregate Fields | Decorator Pattern | Strategy Pattern
- DQL Extension Points: DQL Custom Walkers | DQL User-Defined-Functions
- Implementation: Array Access | Notify ChangeTracking Example | Using Wakeup Or Clone | Working with DateTime | Validation | Entities in the Session | Keeping your Modules independent
- Integration into Frameworks/Libraries CodeIgniter
- Hidden Gems Prefixing Table Name
- Custom Datatypes MySQL Enums Advanced Field Value Conversion
Welcome to Doctrine 2 ORM’s documentation!¶
Tutorials¶
Reference Guide¶
- 1. Architecture
- 2. Installation
- 3. Installation and Configuration
- 4. Frequently Asked Questions
- 5. Basic Mapping
- 6. Association Mapping
- 7. Inheritance Mapping
- 8. Working with Objects
- 9. Working with Associations
- 10. Events
- 11. Doctrine Internals explained
- 12. Association Updates: Owning Side and Inverse Side
- 13. Transactions and Concurrency
- 14. Batch Processing
- 15. Doctrine Query Language
- 16. The QueryBuilder
- 17. Native SQL
- 18. Change Tracking Policies
- 19. Partial Objects
- 20. XML Mapping
- 21. YAML Mapping
- 22. Annotations Reference
- 23. PHP Mapping
- 24. Caching
- 25. Improving Performance
- 26. Tools
- 27. Metadata Drivers
- 28. Best Practices
- 29. Limitations and Known Issues
- 30. Filters
- 31. Implementing a NamingStrategy
- 32. Advanced Configuration
Cookbook¶
- Aggregate Fields
- Persisting the Decorator Pattern
- Extending DQL in Doctrine 2: Custom AST Walkers
- DQL User Defined Functions
- Implementing ArrayAccess for Domain Objects
- Implementing the Notify ChangeTracking Policy
- Implementing Wakeup or Clone
- Integrating with CodeIgniter
- Keeping your Modules independent
- SQL-Table Prefixes
- Strategy-Pattern
- Validation of Entities
- Working with DateTime Instances
- Mysql Enums
- Advanced field value conversion using custom mapping types
- Entities in the Session