PHP Classes

File: vendor/gabordemooij/redbean/RedBeanPHP/Cursor/PDOCursor.php

Recommend this page to a friend!
  Classes of Adrian M   upMVC   vendor/gabordemooij/redbean/RedBeanPHP/Cursor/PDOCursor.php   Download  
File: vendor/gabordemooij/redbean/RedBeanPHP/Cursor/PDOCursor.php
Role: Class source
Content type: text/plain
Description: Class source
Class: upMVC
Pure PHP web development without other frameworks
Author: By
Last change:
Date: 25 days ago
Size: 1,519 bytes
 

Contents

Class file image Download
<?php

namespace RedBeanPHP\Cursor;

use
RedBeanPHP\Cursor as Cursor;

/**
 * PDO Database Cursor
 * Implementation of PDO Database Cursor.
 * Used by the BeanCollection to fetch one bean at a time.
 * The PDO Cursor is used by Query Writers to support retrieval
 * of large bean collections. For instance, this class is used to
 * implement the findCollection()/BeanCollection functionality.
 *
 * @file RedBeanPHP/Cursor/PDOCursor.php
 * @author Gabor de Mooij and the RedBeanPHP Community
 * @license BSD/GPLv2
 *
 * @copyright
 * (c) G.J.G.T. (Gabor) de Mooij and the RedBeanPHP Community.
 * This source file is subject to the BSD/GPLv2 License that is bundled
 * with this source code in the file license.txt.
 */
class PDOCursor implements Cursor
{
   
/**
     * @var \PDOStatement
     */
   
protected $res;

   
/**
     * @var string
     */
   
protected $fetchStyle;

   
/**
     * Constructor, creates a new instance of a PDO Database Cursor.
     *
     * @param \PDOStatement $res the PDO statement
     * @param string $fetchStyle fetch style constant to use
     *
     * @return void
     */
   
public function __construct( \PDOStatement $res, $fetchStyle )
    {
       
$this->res = $res;
       
$this->fetchStyle = $fetchStyle;
    }

   
/**
     * @see Cursor::getNextItem
     */
   
public function getNextItem()
    {
        return
$this->res->fetch();
    }

   
/**
     * @see Cursor::reset
     */
   
public function reset()
    {
       
$this->close();
       
$this->res->execute();
    }

   
/**
     * @see Cursor::close
     */
   
public function close()
    {
       
$this->res->closeCursor();
    }
}