Here's a slight revision to xmlich02's backwards iteration example. The problem with his/her example is that it will halt if any of the array elements are boolean false, while this version will not.
<?php
end($ar);
while ( !is_null($key = key($ar)) ) {
$val = current($ar);
echo "{$key} => {$val}\n";
prev($ar);
}
?>
prev
(PHP 4, PHP 5)
prev — Rewind the internal array pointer
Descrierea
Rewind the internal array pointer.
prev() behaves just like next(), except it rewinds the internal array pointer one place instead of advancing it.
Parametri
- array
-
The input array.
Valorile întoarse
Returns the array value in the previous place that's pointed to by the internal array pointer, or FALSE if there are no more elements.
Exemple
Example #1 Example use of prev() and friends
<?php
$transport = array('foot', 'bike', 'car', 'plane');
$mode = current($transport); // $mode = 'foot';
$mode = next($transport); // $mode = 'bike';
$mode = next($transport); // $mode = 'car';
$mode = prev($transport); // $mode = 'bike';
$mode = end($transport); // $mode = 'plane';
?>
Note
Această funcție poate întoarce valoarea Boolean FALSE, dar poate de asemenea întoarce o valoare non-Boolean care evaluează în FALSE, cum ar fi 0 sau "". Vă rugăm să citiți secțiunea despre tipul Boolean pentru mai multe informații. Utilizați operatorul === pentru a verifica valoarea întoarsă de această funcție.
Notă: You won't be able to distinguish the beginning of an array from a boolean FALSE element. To properly traverse an array which may contain FALSE elements, see the each() function.
Vedeți de asemenea
- current() - Return the current element in an array
- end() - Set the internal pointer of an array to its last element
- next() - Advance the internal array pointer of an array
- reset() - Set the internal pointer of an array to its first element
- each() - Return the current key and value pair from an array and advance the array cursor
// example of backward iteration
$ar = array ( 'a', 'b', 'c', 'd', 'e', 'f') ;
print_r($ar);
end($ar);
while($val = current($ar)) {
echo $val.' ';
prev($ar);
}
