ArrayIterator::valid

(no version information, might be only in CVS)

ArrayIterator::valid --  Check whether array contains more entries

Description

bool ArrayIterator::valid ( void )

This function checks if the array contains any more entries.

例子 1. ArrayIterator::valid() example

<?php
$array
= array('1' => 'one');

$arrayobject = new ArrayObject($array);
$iterator = $arrayobject->getIterator();

var_dump($iterator->valid()); //bool(true)

$iterator->next(); // advance to the next item

//bool(false) because there is only one array element
var_dump($iterator->valid());
?>


add a note add a note User Contributed Notes
kaigillmann at gmxpro dot net
11-Nov-2005 05:55
Sometimes you need to search through the array.
Here is my object-orientated Version:

class MyArrayIterator extends ArrayIterator
{
   public function available($value)
   {
       if (in_array($value, (array)$this))
           return true;
       else
           return false;
   }
  
   public function search($value)
   {
       foreach((array)$this as $Key => $values)
       {
           if ($values == $value)
               return $Key;
       }
       return false;
   }
}