/** * Set all the table rows at once * * @param array $rows * @param string $resultsAs * @return Result */ public function setRows(array $rows = null, $resultsAs = \Pop\Db\Record::ROW_AS_RESULT) { $this->columns = []; $this->rows = []; if (null !== $rows) { $this->columns = isset($rows[0]) ? (array) $rows[0] : []; foreach ($rows as $row) { switch ($resultsAs) { case \Pop\Db\Record::ROW_AS_ARRAY: $this->rows[] = (array) $row; break; case \Pop\Db\Record::ROW_AS_OBJECT: $this->rows[] = new \ArrayObject((array) $row, \ArrayObject::ARRAY_AS_PROPS); break; default: $r = new self($this->db, $this->table, $this->primaryKeys); $r->setColumns((array) $row, $resultsAs); $this->rows[] = $r; } } } }