each 配列から現在のキーと値のペアを返して、カーソルを進める &warn.deprecated.function-7-2-0.removed-8-0-0; &reftitle.description; arrayeach arrayobjectarray 配列から現在のキーと値のペアを返して、カーソルを進めます。 each を実行した後、配列カーソルは、 配列の次の要素に移動します。配列の最終要素にカーソルがある場合は、 最終要素にとどまります。再度 each を使用して配列を走査するには、 reset を使用する必要があります。 &reftitle.parameters; array 入力の配列。 &reftitle.returnvalues; 配列 array から現在のキーと値のペアを返します。 このペアは 4 つの要素を持つ配列で、 それぞれの要素は 0, 1, key, value というキーを有しています。 要素 0key の各々は配列要素のキー名称を保持しており、1value の各々はそのデータを保持しています。 配列の内部ポインタが配列の最終要素以降を指す場合、 each は &false; を返します。 &reftitle.examples; <function>each</function> の例 ]]> $bar は、ここでは以下のキー/値のペアを保持しています。 bob [value] => bob [0] => 0 [key] => 0 ) ]]> "Bob", "Seppo" => "Sepi"); $bar = each($foo); print_r($bar); ?> ]]> $bar は次のようなキー/値のペアを持つようになります。 Bob [value] => Bob [0] => Robert [key] => Robert ) ]]> 通常 each は、配列の走査をするために list と共に使用します。 例えばこのようになります。 <function>each</function> によって配列を走査する 'apple', 'b' => 'banana', 'c' => 'cranberry'); reset($fruit); while (list($key, $val) = each($fruit)) { echo "$key => $val\n"; } ?> ]]> &example.outputs; apple b => banana c => cranberry ]]> 配列を他の変数に代入すると、もとの配列の内部ポインタがリセットされます。 そのため、上の例のループ内で $fruit を他の変数に代入すると、無限ループを引き起こしてしまいます。 each をオブジェクトに対して使用することもできますが、 予期せぬ結果を返すことになるかもしれません。 オブジェクトのプロパティを each で反復処理することはおすすめしません。 &reftitle.seealso; key list current reset next prev &foreach; オブジェクトのイタレーション