current()

current() — Return the current element in an array.

Built-in function of PHP 8.5. The manual lists it as available in PHP 4, PHP 5, PHP 7, PHP 8. This page is the reference card: signature, parameters and return value, plus the changelog and the example the manual provides.

What it does

Every array has an internal pointer to its "current" element, which is initialized to the first element inserted into the array.

Signature

current(array|object $array): mixed

Parameters

ParameterTypeWhat it takes
$arrayarray|objectThe array.

Return value

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. This function may return Boolean false, but may also return a non-Boolean value which evaluates to false. Please read the section on Booleans for more information. Use the === operator for testing the return value of this function.

Example

A runnable snippet:

$transport = array('foot', 'bike', 'car', 'plane'); echo $mode = current($transport), PHP_EOL; // $mode = 'foot'; echo $mode = next($transport), PHP_EOL; // $mode = 'bike'; echo $mode = current($transport), PHP_EOL; // $mode = 'bike'; echo $mode = prev($transport), PHP_EOL; // $mode = 'foot'; echo $mode = end($transport), PHP_EOL; // $mode = 'plane'; echo $mode = current($transport), PHP_EOL; // $mode = 'plane'; $arr = array(); var_dump(current($arr)); // bool(false) $arr = array(array()); var_dump(current($arr)); // array(0) { }

Changelog

VersionChange
8.1.0Calling this function on objects is deprecated. Either convert the object to an array using get_mangled_object_vars() first, or use the methods provided by a class that implements Iterator, such as ArrayIterator, instead.
7.4.0Instances of SPL classes are now treated like empty objects that have no properties instead of calling the Iterator method with the same name as this function.

See also

end(), key(), prev(), reset(), next()

All PHP 8.5 built-in functions

Reference card built from the PHP manual page current() (PHP documentation, CC BY 3.0). The page is generated from the manual, so the wording of the parameter and return value text follows php.net.