(PHP 5 >= 5.0.0)
Iterator::key — 返回当前元素的键
返回当前元素的键。
此函数没有参数。
成功返回标量,失败则返回 NULL
。
失败时分发 E_NOTICE
级错误。
michaelgranados at gmail dot com (2013-06-26 15:46:26)
Since PHP 5.5.X foreach can accept non scalar items. So the return can be anything ;)
Lszl Lajos Jnszky (2012-03-14 00:34:43)
And converts everything to integer except string, so in php the post process could be:
public function key() {
$yourKey = $this->createYourKey();
if (is_object($yourKey) || is_array($yourKey))
throw new Exception('Array and Object not allowed.');
elseif (is_string($yourKey))
return $yourKey;
else
return (int) $yourKey;
}
Anonymous (2011-05-26 15:40:46)
Be careful, the returned value must be a scalar! Took me a while to figure out why foreach() doesn't work on my class that handles arrays with object keys...