CLICK HERE TO BUY IT TODAY! OR GET IT FREE VIA TRIALPAY  

PHP Demo Application - Source Code

/Framework/Model/DataObjects/Parameters/Collections/_Abstract.php

<?php
/**
* Script Contents: Apeel_Framework_Model_DataObjects_Parameters_Collections_Abstract Class
* @package Apeel_Framework_Model_DataObjects
*/

/**
* Abstract Parameter Collection Base Class that provides functionality to 
* implement Iterator interface and can therefore be interated in a FOREACH
* loop.  

* @package      Apeel_Framework_Model_DataObjects 
* @version      1.1.0
* @author       John W. King (email: contact@apeelframework.net)
* @copyright    City Business Logic Limited 2001-2011
* @license      Dual MIT / GNU Lesser General Public License Version 3
*/
abstract class Apeel_Framework_Model_DataObjects_Parameters_Collections_Abstract implements Iterator {

    
/**
    * Array of objects to be iterated through.  
    * 
    * Objects are added and removed via the add() and clear() methods.  
    * 
    * @var array
    */
    
protected $_items NULL;
    
    
    
/**
    * Current selected index of $_items array.  
    * 
    * @var integer
    */
    
private $_index 0;
    
    
    
/**
    * Total number of objects held in $items array.  
    * 
    * @var integer
    */
    
private $_count 0;

    
    
/**
    * Adds an item to the $_items internal array and increments $_count.
    * 
    * @param mixed $item
    * @return void
    */
    
public function add(&$item) {
        
$this->_items[] = $item;
        
$this->_count++;
    }

    
    
/**
    * Clears $_items internal array and resets $_count and $_index. 
    * 
    * @return void
    */
    
public function clear() {
        
$this->_data NULL;
        
$this->_count 0;
        
$this->_index 0;
    }
    
    
    
/**
    * Resets $_index pointer to beginning of $_items array.  
    * 
    * @return void
    */
    
public function rewind() {
        
$this->_index 0;
    }    
    
    
    
/**
    * Returns current item in $_items array.  
    * 
    * @return Parameter Object
    */
    
public function current() {
        return 
$this->_items[$this->_index];
    }
    
    
    
/**
    * Returns current $_index of $_items array.   
    * 
    * @return integer
    */
    
public function key() {
        return 
$this->_index;
    }
    
    
    
/**
    * Advances $_index pointer forward.  
    * 
    * @return void
    */
    
public function next() {
        
$this->_index ++;
    }
    
    
    
/**
    * Checks if end of collection reached.  
    * 
    * @return boolean
    */
    
public function valid() {
        if (
$this->_index $this->_count) {
            return 
true;
        } else {
            return 
false;
        }
    }
    
    
    
/**
    * Returns number of items in collection.  
    * 
    * @return integer
    */
    
public function getCount() {
        return 
$this->_count;
    }
}

?>

PHP Demo Source Code Index