Вполне просто: "Поскольку код уже работает достаточно быстро".
Есть и другие способы сделать это, но нет ничего более быстрого и короткого, чем использование key ()
. Любое другое использование предназначено для получения всех ключей. Например, все они вернут первый ключ в массиве:
$keys=array_keys($this->data);
echo $keys[0]; //prints first key
foreach ($this->data as $key => $value)
{
echo $key;
break;
}
Как видите, оба они небрежны.
Если вам нужен одинарный лайнер, но вы хотите защитить себя от случайного получения неправильного ключа, если итератор находится не на первом элементе, попробуйте следующее:
reset($this->data);
reset () перематывает внутреннюю указатель на первый элемент и возвращает значение первого массива element.
Но то, что вы делаете, мне нравится. Есть функция, которая делает в одной строке именно то, что вы хотите; что еще тебе нужно?