Ejemplo n.º 1
0
 /**
  * Loads a Batch of Beans at once
  * @param string $type
  * @param array $ids
  * @return array $beans
  */
 public function batch($type, $ids)
 {
     if (!$ids) {
         return array();
     }
     $collection = array();
     try {
         $rows = $this->writer->selectRecord($type, $ids);
     } catch (RedBean_Exception_SQL $e) {
         if ($e->getSQLState() != "42S02" && $e->getSQLState() != "42S22") {
             throw $e;
         }
         $rows = false;
     }
     $this->stash = array();
     if (!$rows) {
         return array();
     }
     foreach ($rows as $row) {
         $this->stash[$row["id"]] = $row;
     }
     foreach ($ids as $id) {
         $collection[$id] = $this->load($type, $id);
     }
     $this->stash = NULL;
     return $collection;
 }