在 Doctrine 中,我可以使用函数 fetchArray() 而不是执行或 toArray()。我无法为 Propel 建立等效的这些功能。这可能吗?
如果你确实需要数组,你可以随时使用旧的 Peer API
$criteria = new Criteria();
/* ...setup your criteria... */
$pdoStatement = AuthorPeer::doSelectStmt($criteria);
$array = $pdoStatement->fetchAll(PDO::FETCH_ASSOC);
您可以在
toArray()
之后致电->find()
。
立即:
$authors = AuthorQuery::create()
->limit(5)
->find()
->toArray();
foreach ($authors as $author) {
print_r($author);
}
或者循环:
$authors = AuthorQuery::create()
->limit(5)
->find()
foreach ($authors as $author) {
print_r($author->toArray());
}
您可以像使用数组一样迭代 propel 结果集
$authors = AuthorQuery::create()
->limit(5)
->find();
foreach ($authors as $author) {
echo $authors->getFirstName();
}
http://www.propelorm.org/documentation/03-basic-crud.html#collections_and_ondemand_Hydration