最近我开始学习使用PHP的Doctrine 2.0框架。现在我已经成功地利用了一些Doctrine的东西(使用MySQL),使用定义的XML模型插入了一些数据,但是现在我在选择数据方面遇到了问题。无论是在Doctrine网站还是其他地方,我都发现数据是通过DQL或原始SQL进行选择的。但是这样做,我就失去了ORM带来的一半优势。我该如何使用纯ORM选择数据,例如我可以在Java中使用Hibernate那样的方式?
以下是我正在使用的Doctrine网站上的一些映射XML示例:
以下是我正在使用的Doctrine网站上的一些映射XML示例:
<?xml version="1.0" encoding="UTF-8"?>
<doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping
http://doctrine-project.org/schemas/orm/doctrine-mapping.xsd">
<entity name="Product" table="products">
<id name="id" type="integer" column="product_id">
<generator strategy="AUTO" />
</id>
<field name="name" column="product_name" type="string" />
</entity>
</doctrine-mapping>
$product = $entityManager->find('Product', 123);
最好在开始之前阅读所有文档。 - Orbling