Propel - fetchArray 或 toArray

问题描述 投票:0回答:3

在 Doctrine 中,我可以使用函数 fetchArray() 而不是执行或 toArray()。我无法为 Propel 建立等效的这些功能。这可能吗?

php symfony1 doctrine symfony-1.4 propel
3个回答
2
投票

如果你确实需要数组,你可以随时使用旧的 Peer API

$criteria = new Criteria();
/* ...setup your criteria... */
$pdoStatement = AuthorPeer::doSelectStmt($criteria);
$array = $pdoStatement->fetchAll(PDO::FETCH_ASSOC);

2
投票

您可以在

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());
}

0
投票

您可以像使用数组一样迭代 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

© www.soinside.com 2019 - 2024. All rights reserved.