Doctrine
Projects
Coding Standard
Collections
Common
Data fixtures
DBAL
Event Manager
Inflector
Instantiator
Lexer
Migrations
MongoDB ODM
ORM
PHPCR ODM
Persistence
RST Parser
View All
Development
Community
Contributor Workflow
Maintainer Workflow
Contribute to Website
Policies
GitHub
Styleguide
Sponsorship
Partners
Blog
Edit
CodeIgniter and Doctrine
Download Doctrine
Setup Doctrine
Setup Command Line Interface
Start Using Doctrine
Writing a Unit of Work in PHP Doctrine
Cookbook
Master and Slave Connections
Introduction
Package Contents
User CRUD
Plug and Play Schema Information with Templates
Record-based Retrieval Security Template
Introduction
Template
YAML schema syntax
Using the template
User setup
Querying
Restrictions
Taking Advantage of Column Aggregation Inheritance
About the Author
About Sensio
Acknowledgements and Contributors
Contributors
Roman S. Borschel
Guilherme Blanco
Konsta Vesterinen
Companies
centre{source}
Sensio Labs
Other Contributors
Behaviors
Introduction
Simple Templates
Templates with Relations
Delegate Methods
Creating Behaviors
Core Behaviors
Introduction
Versionable
Timestampable
Sluggable
I18n
NestedSet
Searchable
Geographical
SoftDelete
Nesting Behaviors
Generating Files
Querying Generated Classes
Conclusion
Caching
Introduction
Drivers
Memcache
APC
Db
Query Cache & Result Cache
Introduction
Query Cache
Using the Query Cache
Fine Tuning
Result Cache
Using the Result Cache
Fine Tuning
Conclusion
Coding Standards
PHP File Formatting
General
Indentation
Maximum Line Length
Line Termination
Naming Conventions
Classes
Interfaces
Filenames
Functions and Methods
Variables
Constants
Record Columns
Coding Style
PHP Code Demarcation
Strings
Literal String
String Containing Apostrophes
Variable Substitution
String Concatenation
Concatenation Line Breaking
Arrays
Classes
Functions and Methods
Control Statements
Inline Documentation
Conclusion
Component Overview
Manager
Retrieving Connections
Connection
Available Drivers
Creating Connections
Flushing the Connection
Table
Getting a Table Object
Getting Column Information
Getting Relation Information
Finder Methods
Custom Table Classes
Custom Finders
Record
Properties
Updating Records
Replacing Records
Refreshing Records
Refreshing relationships
Deleting Records
Using Expression Values
Getting Record State
Getting Object Copy
Saving a Blank Record
Mapping Custom Values
Serializing
Checking Existence
Function Callbacks for Columns
Collection
Accessing Elements
Adding new Elements
Getting Collection Count
Saving the Collection
Deleting the Collection
Key Mapping
Loading Related Records
Validator
More Validation
Valid or Not Valid
Implicit Validation
Explicit Validation
Profiler
Basic Usage
Locking Manager
Optimistic Locking
Pessimistic Locking
Examples
Technical Details
Views
Using Views
Conclusion
Configuration
Levels of Configuration
Default Attributes
Default Column Options
Default Added Auto Id
Portability
Portability Mode Attributes
Examples
Identifier quoting
Hydration Overwriting
Configure Table Class
Configure Query Class
Configure Collection Class
Disabling Cascading Saves
Exporting
Naming convention attributes
Index name format
Sequence name format
Table name format
Database name format
Validation attributes
Validation mode constants
Examples
Conclusion
Connections
Introduction
Opening Connections
Retrieve Connections
Current Connection
Change Current Connection
Iterating Connections
Get Connection Name
Close Connection
Get All Connections
Count Connections
Creating and Dropping Database
For a Specific Connection
Writing Custom Connections
Conclusion
Data Fixtures
Importing
Dumping
Implement
Writing
Fixtures For Nested Sets
Fixtures For I18n
Conclusion
Data Hydrators
Core Hydration Methods
Record
Array
Scalar
Single Scalar
On Demand
Nested Set Record Hierarchy
Nested Set Array Hierarchy
Writing Hydration Method
Data Validation
Introduction
Examples
Not Null
Email
Not Blank
No Space
Past
Future
Min Length
Country
IP Address
HTML Color
Range
Unique
Regular Expression
Credit Card
Read Only
Unsigned
US State
Conclusion
Database Abstraction Layer
Export
Introduction
Creating Databases
Creating Tables
Creating Foreign Keys
Altering table
Creating Indexes
Deleting database elements
Import
Introduction
Listing Databases
Listing Sequences
Listing Constraints
Listing Table Columns
Listing Table Indexes
Listing Tables
Listing Views
DataDict
Introduction
Getting portable declaration
Getting Native Declaration
Drivers
Mysql
Setting table type
Conclusion
Defining Models
Columns
Column Lengths
Column Aliases
Default values
Data types
Introduction
Type modifiers
Boolean
Integer
Float
Decimal
String
Array
Object
Blob
Clob
Timestamp
Time
Date
Enum
Gzip
Examples
Relationships
Introduction
Foreign Key Associations
One to One
One to Many and Many to One
Tree Structure
Join Table Associations
Many to Many
Self Referencing (Nest Relations)
Non-Equal Nest Relations
Equal Nest Relations
Foreign Key Constraints
Introduction
Foreign Key Names
Integrity Actions
CASCADE
SET NULL
NO ACTION
RESTRICT
SET DEFAULT
Indexes
Introduction
Adding indexes
Index options
Special indexes
Checks
Table Options
Record Filters
Transitive Persistence
Application-Level Cascades
Save Cascades
Delete Cascades
Database-Level Cascades
Conclusion
DQL: Doctrine Query Language
Introduction
SELECT queries
Aggregate values
UPDATE queries
DELETE Queries
FROM clause
JOIN syntax
ON keyword
WITH keyword
INDEXBY keyword
WHERE clause
Conditional expressions
Literals
Strings
Integers
Floats
Booleans
Enums
Input parameters
Operators and operator precedence
In expressions
Like Expressions
Exists Expressions
All and Any Expressions
Subqueries
Functional Expressions
String functions
Arithmetic functions
Subqueries
Introduction
Comparisons using subqueries
GROUP BY, HAVING clauses
ORDER BY clause
Introduction
Sorting by an aggregate value
Using random order
LIMIT and OFFSET clauses
Driver Portability
The limit-subquery-algorithm
Named Queries
Creating a Named Query
Accessing Named Query
Executing a Named Query
Cross-Accessing Named Query
BNF
Magic Finders
Debugging Queries
Conclusion
Event Listeners
Introduction
Connection Listeners
Creating a New Listener
Attaching listeners
Pre and Post Connect
Transaction Listeners
Query Execution Listeners
Hydration Listeners
Record Listeners
Record Hooks
DQL Hooks
Chaining Listeners
The Event object
Getting the Invoker
Event Codes
Getting the Invoker
Skip Next Operation
Skip Next Listener
Conclusion
Exceptions and Warnings
Manager exceptions
Relation exceptions
Connection exceptions
Query exceptions
Conclusion
Extensions
Getting Started
Checking Requirements
Installing
Sandbox
SVN
Installing
Updating
SVN Externals
PEAR Installer
Download Pear Package
Implementing
Including Doctrine Libraries
Require Doctrine Base Class
Register Autoloader
Autoloading Explained
Bootstrap File
Test Script
Conclusion
Hierarchical Data
Introduction
Nested Set
Introduction
Setting Up
Multiple Trees
Working with Trees
Creating a Root Node
Inserting a Node
Deleting a Node
Moving a Node
Examining a Node
Examining and Retrieving Siblings
Examining and Retrieving Descendants
Rendering a Simple Tree
Advanced Usage
Fetching a Tree with Relations
Rendering with Indention
Conclusion
Imprint
Improving Performance
Introduction
Compile
Conservative Fetching
Bundle your Class Files
Use a Bytecode Cache
Free Objects
Other Tips
Conclusion
Doctrine version ORM Manual
Inheritance
Simple
Concrete
Column Aggregation
Conclusion
Introduction to Connections
DSN, the Data Source Name
Main Parts
Options
Providing the DSN
Examples
Opening New Connections
Lazy Database Connecting
Testing your Connection
Conclusion
Introduction to Models
Introduction
Generating Models
Existing Databases
Making the first import
Schema Files
Manually Writing Models
Autoloading Models
Conservative
Aggressive
Conclusion
Introduction
About this Version
How to Contribute
What is Doctrine?
What is an ORM?
What is the Problem?
Minimum Requirements
Basic Overview
Doctrine Explained
Key Concepts
Further Reading
Conclusion
Attribution-Share Alike 3.0 Unported License
Migrations
Performing Migrations
Implement
Writing Migration Classes
Available Operations
Create Table
Drop Table
Rename Table
Create Constraint
Drop Constraint
Create Foreign Key
Drop Foreign Key
Add Column
Rename Column
Change Column
Remove Column
Irreversible Migration
Add Index
Remove Index
Pre and Post Hooks
Up/Down Automation
Generating Migrations
From Database
From Existing Models
Diff Tool
Conclusion
Native SQL
Introduction
Component Queries
Fetching from Multiple Components
Conclusion
Real World Examples
User Management System
Forum Application
Conclusion
Searching
Introduction
Index structure
Index Building
Text Analyzers
Query language
Performing Searches
File searches
Conclusion
Technology
Introduction
Architecture
Doctrine CORE
Doctrine DBAL
Doctrine ORM
Design Patterns Used
Speed
Conclusion
Transactions
Introduction
Nesting
Savepoints
Isolation Levels
Conclusion
Unit Testing
Running tests
CLI
Browser
Writing Tests
Ticket Tests
Methods for testing
Assert Equal
Assert Not Equal
Assert Identical
Assert True
Assert False
Mock Drivers
Test Class Guidelines
Test Method Guidelines
Conclusion
Utilities
Pagination
Introduction
Working with Pager
Controlling Range Styles
Sliding
Jumping
Advanced layouts with pager
Mask
Template
Customizing pager layout
Facade
Creating & Dropping Databases
Convenience Methods
Tasks
Command Line Interface
Introduction The Doctrine Cli is a collection of tasks that help you
Tasks
Usage
Sandbox
Installation
Conclusion
Working with Models
Define Test Schema
Dealing with Relations
Creating Related Records
Retrieving Related Records
Updating Related Records
Clearing Related Records
Deleting Related Records
Working with Related Records
Testing the Existence of a Relation
Many-to-Many Relations
Creating a New Link
Deleting a Link
Fetching Objects
Sample Queries
Field Lazy Loading
Arrays and Objects
To Array
From Array
Synchronize With Array
Overriding the Constructor
Conclusion
YAML Schema Files
Introduction
Abbreviated Syntax
Verbose Syntax
Relationships
Detect Relations
Customizing Relationships
One to One
One to Many
Many to Many
Features & Examples
Connection Binding
Attributes
Enums
ActAs Behaviors
Listeners
Options
Indexes
Inheritance
Simple Inheritance
Concrete Inheritance
Column Aggregation Inheritance
Column Aliases
Packages
Package Custom Path
Global Schema Information
Using Schema Files
Conclusion
Projects
Doctrine1
Documentation
This project is no longer maintained and has been archived.
Table of Contents
master
Maintained
master
Unmaintained
English Documentation
Doctrine version ORM Manual
Cookbook
Top