(PHP 4, PHP 5, PHP 7, PHP 8)
current — Return the current element in an array
Every array has an internal pointer to its "current" element, which is initialized to the first element inserted into the array.
array
The array.
The current() function simply returns the
value of the array element that's currently being pointed to by the
internal pointer. It does not move the pointer in any way. If the
internal pointer points beyond the end of the elements list or the array is
empty, current() returns false
.
Ця функція може
повертати як логічне false
, так і не логічне значення, яке прирівнюється до
false
. Докладніше про це описано в розділі Логічні типи даних. Для перевірки
значення, яке повертає ця функція, використовується оператор ===.
Версія | Опис |
---|---|
8.1.0 | Виклик цієї функції для об'єктів є застарілим. Краще перетворити object в array, застосувавши get_mangled_object_vars(), або використати методи класу, який імплементує Iterator, наприклад ArrayIterator. |
7.4.0 | Примірники класів SPL тепер розглядаються як порожні об'єкти, які не мають властивостей, замість виклику метода інтерфейсу Iterator з такою ж назвою, як і в цієї функції. |
Приклад #1 Example use of current() and friends
<?php
$transport = array('foot', 'bike', 'car', 'plane');
$mode = current($transport); // $mode = 'foot';
$mode = next($transport); // $mode = 'bike';
$mode = current($transport); // $mode = 'bike';
$mode = prev($transport); // $mode = 'foot';
$mode = end($transport); // $mode = 'plane';
$mode = current($transport); // $mode = 'plane';
$arr = array();
var_dump(current($arr)); // bool(false)
$arr = array(array());
var_dump(current($arr)); // array(0) { }
?>
Зауваження: The results of calling current() on an empty array and on an array, whose internal pointer points beyond the end of the elements, are indistinguishable from a bool
false
element. To properly traverse an array which may containfalse
elements, see the foreach control structure. To still use current() and properly check if the value is really an element of the array, the key() of the current() element should be checked to be strictly different fromnull
.