You are here

SplQueue.php in Zircon Profile 8

Same filename and directory in other branches
  1. 8.0 vendor/zendframework/zend-stdlib/src/SplQueue.php

Namespace

Zend\Stdlib

File

vendor/zendframework/zend-stdlib/src/SplQueue.php
View source
<?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 SplQueue
 */
class SplQueue extends \SplQueue implements Serializable {

  /**
   * Return an array representing the queue
   *
   * @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
        ->push($item);
    }
  }

}

Classes

Namesort descending Description
SplQueue Serializable version of SplQueue