この記事では、$key => $value として PHP の foreach の 2 つの使用法を紹介します。これは、必要な友達に参照してもらえるように共有します。 1. foreach 構文の紹介。
PHP 4 以降には、配列を走査するための便利な方法である foreach 構造が含まれています。 foreach は配列でのみ使用でき、他のデータ型または初期化されていない変数で使用しようとするとエラーが発生します。構文は 2 つあり、2 番目の構文は最初の構文を拡張したものです。 foreach(array_expression as $value) statement
foreach(array_expression as $key => $value) statement
2 番目の形式は同じことを行います
が、現在のセルの値に加えて、各ループでキー値も変数 $key
$arr = array("1"=>"111","2"=>"222","3"=>"333"); foreach($arr as $key=>$value) { echo $key."=>".$value."\n"; }
结果如下: 1=>111 2=>222 3=>333
foreach の実行が開始されると、配列内のポインターが自動的にポイントされます。最初のユニットへ。これは、foreach ループの前にreset()を呼び出す必要がないことを意味します。 while ループにはリセットが必要です。以下の 2 つのコードはまったく同じように機能します。
1. while ループを使用します$arr = array("one", "two", "three"); reset ($arr); while (list(, $value) = each ($arr)) { echo "Value: $value<br>\n"; }
2. foreach を使用します
foreach ($arr as $value) { echo "Value: $value<br>\n"; }
また、foreach は配列自体ではなく、指定された配列のコピーを操作することに注意してください。したがって、 each() を構築しても、元の配列ポインタは変更されず、配列単位の値は影響を受けません。
1. foreach での参照の使用。 通常、foreach($arr as $value)の$arrと$valueはコピーであり、外部要因の影響を受けません、つまり
$arr = array(0,1,2,3,4,5); foreach($arr as $value){ $arr = array(); echo $value; }
结果是:12345
$arr = array(0,1,2,3,4,5); $arr = &$arr; foreach($arr as $value){ $arr = array(); echo $value; }
结果是: 0
$arr = array(0,1,2,3,4,5); foreach($arr as &$value){ $arr = array(); echo $value; }
结果是: 0
global $arr; $arr = array(0,1,2,3,4,5); foreach($arr as $value){ $arr = array(); echo $value; }
结果是: 0
foreach($arr as &$value){} foreach($arr as $value){}
//solution 1 foreach($arr as &$value){} unset($value); foreach($arr as $value){} //solution 2 foreach($arr as &$value){} foreach($arr as &$value){} //solution 3 foreach($arr as &$value){} $arr2 = $arr; foreach($arr2 as $value){}
PHP での foreach の使用法と例の詳細な説明
以上が$key => $value としての PHP foreach の 2 つの使用法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。