キーと値のペアを取得する
![]()
配列のキーと値のペアを取得するには色々な方法が考えられますが、よく使われるのはlist関数とezch関数を組み合わせた方法、あるいはforeach分を使う方法です。
each関数は、拝謁の内部ポインタが指し示しているようそのキーと値のペアを取得して、内部ポインタを次の要素に勧める働きをします。内部ポインタが配列の末尾を超えた場合にFALSEを返しますので、配列の要素がもうないことを判別することができます。each関数が返す配列には、次のように4つの要素があります。
これを$element["key"], $element["value"]などのように使っても良いのですが、list関数と組み合わせるともっと楽に記述できます。
注意しなければならないのは、each関数を使ってループ処理で各要素のキーと値を取得した場合、ループを抜けた後に配列の内部ポインタが最後の要素をさしたままになっていることです。each関数を使ってループを行う場合は、事前にreset関数を使って内部ポインタを配列の先頭に移動しておくようにしたほうが良いでしょう。
foreach分を使う場合は、次のように配列メイン後ろに「as」というキーワードと、キーや値を受け取る変数を記述します。FOREACH文の場合は、ループ処理を始める前に、配列の内部ポインタが自動的に先頭要素にリセットされますので、reset関数を事前に使っておく必要はありません。