current
(PHP 4, PHP 5, PHP 7, PHP 8)
current — Liefert das aktuelle Element eines Arrays
Beschreibung
Jedes Array hat einen internen Zeiger auf sein "aktuelles" Element, welcher auf das erste in das Array eingefügte Element initialisiert wird.
Parameter-Liste
-
array
-
Das Array.
Rückgabewerte
Die Funktion current() gibt den Wert des Array-Elements
zurück, auf das der interne Zeiger gerade zeigt. Sie bewegt den Zeiger
überhaupt nicht. Zeigt der interne Zeiger hinter das Ende der
Elementliste, gibt current() false
zurück.
Diese Funktion kann sowohl das
boolsche false
zurückliefern, als auch einen nicht-boolschen Wert, welcher zu false
ausgewertet wird.
Weitere Informationen entnehmen Sie bitte dem Abschnitt über die
boolschen Typen. Benutzen Sie deshalb
den === Operator,
um den Rückgabewert dieser Funktion zu überprüfen.
Changelog
Version | Beschreibung |
---|---|
8.1.0 | Die Verwendung dieser Funktion bei Objekten ist veraltet. Entweder sollte zuerst get_mangled_object_vars() auf das Objekt angewendet werden oder sollte ArrayIterator verwendet werden. |
Beispiele
Beispiel #1 Beispiel für die Verwendung von current() und Freunden
<?php
$transport = array('zu Fuß', 'Fahrrad', 'Auto', 'Flugzeug');
$mode = current($transport); // $mode = 'zu Fuß';
$mode = next($transport); // $mode = 'Fahrrad';
$mode = current($transport); // $mode = 'Fahrrad';
$mode = prev($transport); // $mode = 'zu Fuß';
$mode = end($transport); // $mode = 'Flugzeug';
$mode = current($transport); // $mode = 'Flugzeug';
$arr = array();
var_dump(current($arr)); // bool(false)
$arr = array(array());
var_dump(current($arr)); // array(0) { }
?>
Anmerkungen
Hinweis: Das Ergebnis des Aufrufs von current() auf ein leeres Array und auf ein Array, dessen interner Zeiger hinter das Ende der Elemente zeigt, sind nicht unterscheidbar von einem boolschen
false
-Element. Um ein Array, das möglicherweisefalse
-Elemente enthält, korrekt zu durchlaufen, siehe die Kontrollstruktur foreach. Um current() dennoch zu verwenden und korrekt zu prüfen, ob der Wert tatsächlich ein Element des Arrays ist, sollte überprüft werden, ob sich der key() des current()-Elements im strikten Vergleich vonnull
unterscheidet.
Siehe auch
- end() - Positioniert den internen Zeiger eines Arrays auf dessen letztes Element
- key() - Liefert einen Schlüssel eines Arrays
- each() - Liefert das aktuelle Schlüssel-Wert-Paar eines Arrays und rückt den Arrayzeiger vor
- prev() - Setzt den internen Arrayzeiger um ein Element zurück
- reset() - Setzt den internen Zeiger eines Arrays auf sein erstes Element
- next() - Rückt den internen Arrayzeiger vor
- foreach