Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 3.11.x will end 14 Nov 2022 (12 months plus 6 months extension).
  • Bug fixes for security issues in 3.11.x will end 13 Nov 2023 (18 months plus 12 months extension).
  • PHP version: minimum PHP 7.3.0 Note: minimum PHP version has increased since Moodle 3.10. PHP 7.4.x is supported too.
<?php

namespace Box\Spout\Reader\CSV;

use Box\Spout\Reader\IteratorInterface;

/**
 * Class SheetIterator
 * Iterate over CSV unique "sheet".
 */
class SheetIterator implements IteratorInterface
{
< /** @var \Box\Spout\Reader\CSV\Sheet The CSV unique "sheet" */
> /** @var Sheet The CSV unique "sheet" */
protected $sheet; /** @var bool Whether the unique "sheet" has already been read */ protected $hasReadUniqueSheet = false; /** * @param Sheet $sheet Corresponding unique sheet */ public function __construct($sheet) { $this->sheet = $sheet; } /** * Rewind the Iterator to the first element * @see http://php.net/manual/en/iterator.rewind.php * * @return void */
< public function rewind()
> public function rewind() : void
{ $this->hasReadUniqueSheet = false; } /** * Checks if current position is valid * @see http://php.net/manual/en/iterator.valid.php * * @return bool */
< public function valid()
> public function valid() : bool
{ return (!$this->hasReadUniqueSheet); } /** * Move forward to next element * @see http://php.net/manual/en/iterator.next.php * * @return void */
< public function next()
> public function next() : void
{ $this->hasReadUniqueSheet = true; } /** * Return the current element * @see http://php.net/manual/en/iterator.current.php *
< * @return \Box\Spout\Reader\CSV\Sheet
> * @return Sheet
*/
< public function current()
> public function current() : Sheet
{ return $this->sheet; } /** * Return the key of the current element * @see http://php.net/manual/en/iterator.key.php * * @return int */
< public function key()
> public function key() : int
{ return 1; } /** * Cleans up what was created to iterate over the object. * * @return void */
< public function end()
> public function end() : void
{ // do nothing } }