Mercurial > hg > cmmr2012-drupal-site
diff vendor/zendframework/zend-stdlib/src/SplStack.php @ 0:c75dbcec494b
Initial commit from drush-created site
author | Chris Cannam |
---|---|
date | Thu, 05 Jul 2018 14:24:15 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/zendframework/zend-stdlib/src/SplStack.php Thu Jul 05 14:24:15 2018 +0000 @@ -0,0 +1,55 @@ +<?php +/** + * Zend Framework (http://framework.zend.com/) + * + * @link http://github.com/zendframework/zf2 for the canonical source repository + * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com) + * @license http://framework.zend.com/license/new-bsd New BSD License + */ + +namespace Zend\Stdlib; + +use Serializable; + +/** + * Serializable version of SplStack + */ +class SplStack extends \SplStack implements Serializable +{ + /** + * Serialize to an array representing the stack + * + * @return array + */ + public function toArray() + { + $array = []; + foreach ($this as $item) { + $array[] = $item; + } + return $array; + } + + /** + * Serialize + * + * @return string + */ + public function serialize() + { + return serialize($this->toArray()); + } + + /** + * Unserialize + * + * @param string $data + * @return void + */ + public function unserialize($data) + { + foreach (unserialize($data) as $item) { + $this->unshift($item); + } + } +}