Every array has an internal pointer to its "current" element, which is initialized to the first element inserted into 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.
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.
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 contain false 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 from null.
|8.1.0||Calling this function on objects is deprecated. Either use get_mangled_object_vars on the object first, or use ArrayIterator.|