foreach()
PHP の foreach() 構文構造は、操作または出力配列の走査に使用されます。foreach() は、配列またはオブジェクトの走査にのみ使用できます。他のデータ型または初期化されていない変数に使用しようとすると、エラーが発生します。
文法:
リーリー上記の構文では、各ループは現在の単位の値を $value に代入し、配列内のポインターを 1 ステップ前に移動します。 2 番目の構文形式では、現在のユニットのキー名も各ループの変数 $key に割り当てられます。
例:
この例を実行した場合の出力:
配列キー値を使用する
例の実行の出力:
foreach の実行が開始されると、配列内のポインターは自動的に最初の要素を指します。これは、foreach ループの前にreset() を呼び出す必要がないことを意味します。
foreach は、配列自体ではなく、指定された配列のコピーを操作します。返された配列要素を変更しても、元の配列には影響しません (以下の例を参照)。ただし、foreach ループが最後まで実行されると、元の配列の内部ポインターは配列の末尾を指すようになります。
例の実行の出力:
foreach の元の配列要素を変更するには、上記の例を次のように変更します。
リーリー
リーリー
多次元配列を走査
foreach 構文構造は、1 次元配列を走査する場合にのみ使用できます。多次元配列を走査するには、通常、foreach ネストされた再帰を使用するか、元の配列を 1 次元配列に分割してから foreach 走査を実行します。
1次元配列と2次元配列の混合の例:
リーリー
多次元配列を走査するための最も適切な処理方法は、実際のデータ構造に基づいている必要があります。
for() は配列をループします
連続キー値の配列を操作している場合は、for() ループを使用して配列を走査することもできます。
リーリー
list() と each() を組み合わせて配列を走査することもできますが、テストの結果、foreach() ほど効率的ではないことがわかりました。
上記の PHP 配列トラバーサルの foreach 構文構造と例は、すべてエディターによって共有された内容です。参考にしていただければ幸いです。また、Bangkejia をサポートしていただければ幸いです。