joomla_test/libraries/joomla/database/iterator/pdo.php
2020-01-02 22:20:31 +07:00

75 lines
1.5 KiB
PHP

<?php
/**
* @package Joomla.Platform
* @subpackage Database
*
* @copyright Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE
*/
defined('JPATH_PLATFORM') or die;
/**
* PDO database iterator.
*
* @package Joomla.Platform
* @subpackage Database
* @since 12.1
*/
class JDatabaseIteratorPdo extends JDatabaseIterator
{
/**
* Get the number of rows in the result set for the executed SQL given by the cursor.
*
* @return integer The number of rows in the result set.
*
* @since 12.1
* @see Countable::count()
*/
public function count()
{
if (!empty($this->cursor) && $this->cursor instanceof PDOStatement)
{
return $this->cursor->rowCount();
}
else
{
return 0;
}
}
/**
* Method to fetch a row from the result set cursor as an object.
*
* @return mixed Either the next row from the result set or false if there are no more rows.
*
* @since 12.1
*/
protected function fetchObject()
{
if (!empty($this->cursor) && $this->cursor instanceof PDOStatement)
{
return $this->cursor->fetchObject($this->class);
}
else
{
return false;
}
}
/**
* Method to free up the memory used for the result set.
*
* @return void
*
* @since 12.1
*/
protected function freeResult()
{
if (!empty($this->cursor) && $this->cursor instanceof PDOStatement)
{
$this->cursor->closeCursor();
}
}
}