ホームページ  >  記事  >  バックエンド開発  >  PHP foreach() の使用法と例、phpforeach_PHP チュートリアル

PHP foreach() の使用法と例、phpforeach_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 09:52:11772ブラウズ

PHP foreach() の使用法と例、phpforeach

元の Web サイト:
http://blog.csdn.net/china_skag/article/details/6444727

PHP 4 では、Perl に非常によく似た foreach 構造が導入されています。および他の言語の画像。これは、配列を反復処理するための単なる便利な方法です。 foreach は配列でのみ使用でき、他のデータ型または初期化されていない変数で使用しようとするとエラーが発生します。 2 つの構文があり、2 番目の構文は重要度は低いですが、最初の構文を拡張したものです。

foreach (array_expression as $value)
ステートメント

foreach (array_expression as $key => $value)
ステートメント

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

2 番目の形式でも同じことを行いますが、現在のセルのキー名が各ループの変数 $key にも割り当てられる点が異なります。



まず最初のステートメントを見てみましょう。このステートメントは比較的単純です。array_expression は配列の値を順番に取得し、それを $val 変数に保存します。配列内の値のみを取得しますが、配列の添字インデックス値は取得しません。例:

$myArray=array("1"=>​​"val1","2"=>"val2","3"=>"val3");
foreach($myArray as $val) {
print($val." ");
}

結果は次のように出力されます: val1 val2 val3


最初の形式と同様に配列内の要素を取得することに加えて、2 番目の形式を見てみましょう。 format can 値に加えて、要素のインデックス値も取得して $key 変数に保存できます。配列のインデックス値が手動で設定されていない場合は、システムのデフォルト設定値が返されます。正の例:

まず単純な 1 次元配列を見てみましょう:

$myArray=array("1"=>"val1","2"="val2","3"=> "val3");
foreach($myArray as $key= > >val3;、次に、より複雑な 2 次元配列の走査を見てみましょう。プログラムは次のとおりです:

$myArray=array(
“1” =>array("11"=>"val11","12"=>"val12","13"=>"val13"),
"2"=>array("21"=> ;"val21","22"=>"val22","23"=>"val23"),
"3"=>array("31"=>"val31","32"=> ;"val32","33"=>"val33")
) ;
print("

    ");
    foreach($myArray as $key=>$val) {
    print("< li&gt; "。$ key。"&lt;/li&gt; "); ){
    }
    }
    print("
");

。出力結果:

11=>val11
12=>val12
13=>val13
2
21=> val21
22=>val22
23=>val23
3
31=>val31
32=>val32
33=>val33

  • ; および
  • はタグです。小さなドットと中空のドットをベタで表示します。
    上記は2次元配列なので、1回目の走査後に得られる$valの値が配列になるので、2段目の配列走査用に走査に判定を追加しました。




    パズルを解く別の例

    $a = array("1"=>​​"中国語","2"=>"数学","3"=>"英語");
    $b = array("1"=>​​"95","2"=>"99","3"=>"92");
    foreach($a as $key= >$value){
    echo $value;
    echo $b[$key]."
    ";
    }
    ?>

    問題は、なぜ $b[ が配列の値を出力するために使用されるのかということです$b[$value]の代わりに$b $key]?

    なぜですか?

    $a = array("1"=>"中国語","2"=>"数学","3"=>"英語");
    上のものは下のものと全く同じです

    $a [1]="中国語";
    $a[2]="数学"
    $a[3]="英語"

    上記の配列を出力するにはどうすればよいでしょうか?

    それは echo $a[1];

    ですよね?

    疑問がなければ、続けてみましょう! ! ! !


    ——————————————————————————————————————————


    ただ言ってくださいforeach

    その形式は次のようになります foreach(array Name as subscript => value)

    添字は上記の $a[1] で、ここの 1 は配列の添字です。

    これで、なぜ $a[$key] がこのように出力されるのか理解できるはずです

    どのように変更されても、配列の出力メソッドは $a[' Chinese' ではなく、常に $a[1] になることを覚えておいてください。 ]




    =========================================== ====== ===================

    foreach() には 2 つの用途があります:
    1: foreach(array_name as $value){
    ステートメント;
    }
    array_name は、走査する配列の名前です。各ループでは、array_name 配列の現在の要素の値が $value に割り当てられ、配列内の添え字が 1 つ下のステップ、つまり次のステップに移動します。要素は次のループで取得されます。


    2: foreach(array_name as $key => $value){
    value に加えて、現在の要素のキー値も各ループの変数 $key に割り当てられます。キー値には、添え字値または文字列を指定できます。たとえば、book[0] の「0」=1、book[id] の「id」==1。

    http://www.bkjia.com/PHPjc/1010336.html

    tru​​ehttp://www.bkjia.com/PHPjc/1010336.html技術記事 PHP foreach() の使用法と例、phpforeach のオリジナル Web サイト: http://blog.csdn.net/china_skag/article/details/6444727 PHP 4 では、Perl や他の言語に非常によく似た foreach 構造が導入されました。これは…
  • 声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。