/** * DataReader factory * Executes a SQL statement (with optional parameters) and returns a new DataReader ready for iteration * * @param string $sql * @param array $parameters * @param \PDO $connection * @param int $fetchMode * * @return DataReader|bool */ public static function create($sql, $parameters = null, $connection = null, $fetchMode = \PDO::FETCH_ASSOC) { $_reader = new DataReader(Sql::createStatement($sql, $connection, $fetchMode)); if (false === ($_result = $_reader->execute($parameters))) { // Don't be wasteful unset($_reader); return false; } return $_reader; }
/** * Creates and returns an optionally parameter-bound \PDOStatement object suitable for iteration * * @param string $sql * @param array $parameters * @param \PDO $connection * @param int $fetchMode Set to false to not touch fetch mode * * @return \Kisma\Core\Tools\DataReader */ public static function query($sql, $parameters = null, &$connection = null, $fetchMode = \PDO::FETCH_ASSOC) { return DataReader::create($sql, $parameters, $connection, $fetchMode); }