配列の最初の要素を取得する 質問する

配列の最初の要素を取得する 質問する

配列があります:

array( 4 => 'apple', 7 => 'orange', 13 => 'plum' )

この配列の最初の要素を取得したいと思います。期待される結果:文字列 apple

1 つの要件:参照渡しでは実行できないため、array_shift適切な解決策ではありません。

これどうやってするの?

ベストアンサー1

オリジナルの答えですが、コストがかかります (O(n)):

array_shift(array_values($array));

O(1)の場合:

array_pop(array_reverse($array));

その他のユースケースなど

の変更(配列ポインタをリセットするという意味)が$array問題にならない場合は、次のように使用できます。

reset($array);

配列の「コピー」が必要な場合、理論的にはこれがより効率的になるはずです。

array_shift(array_slice($array, 0, 1));

PHP 5.4 以降の場合 (ただし、空の場合はインデックス エラーが発生する可能性があります):

array_values($array)[0];

おすすめ記事