1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php
- /**
- * A representation of a page of resources.
- *
- * @category Services
- * @package Services_Twilio
- * @author Neuman Vong <neuman@twilio.com>
- * @license http://creativecommons.org/licenses/MIT/ MIT
- * @link http://pear.php.net/package/Services_Twilio
- */
- class Services_Twilio_Page
- implements IteratorAggregate
- {
- /**
- * The item list.
- *
- * @var array $items
- */
- protected $items;
- /**
- * Constructs a page.
- *
- * @param object $page The page object
- * @param string $name The key of the item list
- */
- public function __construct($page, $name, $next_page_uri = null)
- {
- $this->page = $page;
- $this->items = $page->{$name};
- $this->next_page_uri = $next_page_uri;
- }
- /**
- * The item list of the page.
- *
- * @return array A list of instance resources
- */
- public function getItems()
- {
- return $this->items;
- }
- /**
- * Magic method to allow retrieving the properties of the wrapped page.
- *
- * @param string $prop The property name
- *
- * @return mixed Could be anything
- */
- public function __get($prop)
- {
- return $this->page->$prop;
- }
- /**
- * Implementation of IteratorAggregate::getIterator().
- *
- * @return Traversable
- */
- public function getIterator()
- {
- return $this->getItems();
- }
- }
|