*/ class result { /** * * @var PDOStatement */ private $result; /** * Use PDO for Connection * * @var boolean */ static private $usePDO = false; /** * Constructor * * @author Michal Czech * @param PDOStatement $result * @param int $id */ function __construct($result,$id = null) { if(is_a($result,'PDOStatement')) { self::$usePDO = true; } $this->result = $result; $this->id = $id; } /** * Fetch one record * * @author Michal Czech * @return array */ function fetch() { return $this->result->fetch(\PDO::FETCH_ASSOC); } /** * Fetch All Records * * @author Michal Czech * @return array */ function fetchAll() { if(self::$usePDO) { return $this->result->fetchAll(\PDO::FETCH_ASSOC); } else { $result = array(); while($row = $this->fetch()) { $result[] = $row; } return $result; } } function fetchAllKeyPair() { return $this->result->fetchAll(\PDO::FETCH_KEY_PAIR); } function fetchGroup() { return $this->result->fetchAll(\PDO::FETCH_GROUP|\PDO::FETCH_UNIQUE|\PDO::FETCH_ASSOC); } /** * Fetch One Column From First Record * * @author Michal Czech * @param string $name * @return array */ function fetchColumn($name = null) { $data = $this->result->fetch(\PDO::FETCH_BOTH); if($name) { return $data[$name]; } else { return $data[0]; } } /** * Get ID Last Inserted Record * * @author Michal Czech * @return int */ function getID() { return $this->id; } function numRows() { $this->result->fetch(\PDO::FETCH_BOTH); return $this->result->rowCount(); } }