Php current()函数是否保证以指向数组第一个元素的内部指针开始?

Php current()函数是否保证以指向数组第一个元素的内部指针开始?,php,arrays,Php,Arrays,我的问题正是如上所述 我想知道“相信”数组的内部指针总是指向它的第一个元素是否足够,不管发生什么,只要使用以下命令: $bar = current($foo); 或者,如果我不冒任何风险,在使用数组之前先将数组的内部指针重置为其第一个元素: reset($foo); $bar = current($foo); 我之所以问这个问题,是因为如果current()函数本身不可靠,它可能会向最终用户提供误导性的信息,我更愿意避免任何主题如下的电子邮件: "What is this? I don't

我的问题正是如上所述

我想知道“相信”数组的内部指针总是指向它的第一个元素是否足够,不管发生什么,只要使用以下命令:

$bar = current($foo);
或者,如果我不冒任何风险,在使用数组之前先将数组的内部指针重置为其第一个元素:

reset($foo);
$bar = current($foo);
我之所以问这个问题,是因为如果current()函数本身不可靠,它可能会向最终用户提供误导性的信息,我更愿意避免任何主题如下的电子邮件:

"What is this? I don't even..."
我相信你能理解。:)

编辑:

我知道current()函数的作用是访问数组当前内部指针所在的位置。我的问题是,当没有其他函数调用应该移动内部指针时,内部指针是否保证在创建数组后立即指向数组的第一个元素。

当前()的要点是访问数组内部指针当前所在位置的元素。如果要使用始终返回第一个元素的函数,可以使用该数组的内部指针
reset()
(它还返回第一个元素中的值,这样您就不需要在之后调用
current()
),或者使用
$foo[0]
(不移动指针,仅用于正确排序的数字索引数组)

对于said,为了回答您的问题,
current()
保证在使用
array(…)
符号创建数组后立即返回数组的第一个元素。从函数的手动示例中:

<?php
$transport = array('foot', 'bike', 'car', 'plane');
$mode = current($transport); // $mode = 'foot';
...
<?php

$array = array('step one', 'step two', 'step three', 'step four');

// by default, the pointer is on the first element
echo current($array) . "<br />\n"; // "step one"

...

+1--应该注意,如果数组使用字符串而不是数字键,
$foo[0]
将不起作用。@Billy:谢谢,我添加了这个。