ホームページ  >  記事  >  バックエンド開発  >  PHP foreach の配列のトラバースの詳細な説明

PHP foreach の配列のトラバースの詳細な説明

PHPz
PHPzオリジナル
2017-04-04 11:29:584193ブラウズ

PHP foreachとは何ですか?

foreach は、配列を反復処理する便利な方法です。 foreach は配列でのみ使用でき、他のデータ型または初期化されていない変数で使用しようとするとエラーが発生します。

PHP foreach には 2 つの構文があります

2 つの構文があり、2 番目の構文はそれほど重要ではありませんが、最初の構文の便利な拡張です。

  • 最初の形式は、指定された array_expression 配列を反復処理します。ループを通過するたびに、現在のセルの値が $value に割り当てられ、配列内のポインターが 1 ステップ前に移動します (そのため、次のループで次のセルが取得されます)。

    foreach (array_expression as $value)
      statement
  • 2 番目の形式でも同じことを行いますが、現在のユニットのキー名が各ループの変数 $key にも割り当てられる点が異なります。
    PHP 5 以降、オブジェクトをトラバースすることも可能です。

    foreach (array_expression as $key => $value)
      statement

注: foreach の実行が開始されると、配列内のポインターは自動的に最初のユニットを指します。これは、foreach ループの前にreset()を呼び出す必要がないことを意味します。

注: 配列が参照されない限り、foreach は配列自体ではなく、指定された配列のコピーを操作します。 foreach は配列ポインターにいくつかの副作用をもたらします。リセットされない限り、foreach ループ中またはループ後に配列ポインターの値に依存しないでください。
PHP 5 以降では、$value の前に & を追加することで配列の要素を簡単に変更できます。このメソッドは、値をコピーするのではなく、参照によって割り当てます。

<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}
// $arr is now array(2, 4, 6, 8)
?>

このメソッドは、走査される配列が参照できる場合 (たとえば、変数である場合) にのみ使用できます。

りー

以上がPHP foreach の配列のトラバースの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。