Propel - fetchArray или toArray - PullRequest
       21

Propel - fetchArray или toArray

0 голосов
/ 29 декабря 2011

В Doctrine я могу использовать функцию fetchArray () вместо execute или toArray ().Я не могу найти эквивалент этих функций для Propel.Возможно ли это?

Ответы [ 3 ]

2 голосов
/ 31 декабря 2011

если вам действительно нужен массив, вы всегда можете использовать старый Peer API

$criteria = new Criteria();
/* ...setup your criteria... */
$pdoStatement = AuthorPeer::doSelectStmt($criteria);
$array = $pdoStatement->fetchAll(PDO::FETCH_ASSOC);
1 голос
/ 29 июня 2016

Вы можете позвонить toArray() сразу после ->find().

Либо сразу:

$authors = AuthorQuery::create()
  ->limit(5)
  ->find()
  ->toArray();
foreach ($authors as $author) {
  print_r($author);
}

Или в цикле:

$authors = AuthorQuery::create()
  ->limit(5)
  ->find()l
foreach ($authors as $author) {
  print_r($author->toArray());
}
0 голосов
/ 29 декабря 2011

Вы можете перебирать набор результатов 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

...