ホームページ  >  記事  >  バックエンド開発  >  PHP 配列ループのデータ取得テクニックを素早くマスターする_PHP チュートリアル

PHP 配列ループのデータ取得テクニックを素早くマスターする_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-15 13:28:071249ブラウズ

大量のデータを取得したい場合は、配列をループする必要があります。PHP 配列をループしてデータを取得する方法を見てみましょう。データを配列に配置するのは私たちの役割なので、では、どうやってデータを取り出すのでしょうか? 配列からデータを取得するのは非常に簡単です。インデックス番号を使用して配列の適切な要素にアクセスするだけです。配列全体の内容を読み取るには、このチュートリアルの第 3 章で学習したループ構造を使用して配列をループするだけです。

簡単な例はどうでしょうか?

<ol class="dp-xml"><li class="alt"><span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>html</SPAN><SPAN class=tag>></span></font></strong><span> </span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>head</SPAN><SPAN class=tag>></span><span class="tag"></</SPAN><SPAN class=tag-name>head</SPAN><SPAN class=tag>></span></font></strong><span> </span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>body</SPAN><SPAN class=tag>></span></font></strong><span> My favourite bands are: </span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>ul</SPAN><SPAN class=tag>></span></font></strong><span> </span><strong><font color="#006699"><span class="tag"><?</SPAN><SPAN class=tag-name>php</SPAN></FONT></STRONG><SPAN> <br>// define array $</SPAN><SPAN class=attribute><FONT color=#ff0000>artists</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>('Metallica', 'Evanescence', 'Linkin Park', 'Guns n Roses'); <br>// loop over it and print array elements for ($</SPAN><SPAN class=attribute><FONT color=#ff0000>x</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>0</FONT></SPAN><SPAN>; $x </SPAN><SPAN class=tag><STRONG><FONT color=#006699><</FONT></STRONG></SPAN><SPAN> </SPAN><SPAN class=tag-name><STRONG><FONT color=#006699>sizeof</FONT></STRONG></SPAN><SPAN>($artists); $x++) { echo '</SPAN><STRONG><FONT color=#006699><SPAN class=tag><</SPAN><SPAN class=tag-name>li</SPAN><SPAN class=tag>></span></font></strong><span>'.$artists[$x]; } </span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span><strong><font color="#006699"><span class="tag"></</SPAN><SPAN class=tag-name>ul</SPAN><SPAN class=tag>></span></font></strong><span> </span><strong><font color="#006699"><span class="tag"></</SPAN><SPAN class=tag-name>body</SPAN><SPAN class=tag>></span></font></strong><span> </span><strong><font color="#006699"><span class="tag"></</SPAN><SPAN class=tag-name>html</SPAN><SPAN class=tag>></span></font></strong><span> </span></span></li></ol>

このスクリプトを実行すると、次の結果が表示されます:

<ol class="dp-xml"><li class="alt"><span><span>My favourite bands are: Metallica Evanescence Linkin Park Guns n Roses </span></span></li></ol>

この例では、最初に配列を定義し、次に for() ループを使用して次のことを実行します。配列の場合は、インデックス表記を使用して要素を取得し、次々に表示します。 ここで、sizeof() 関数に注目してください。この関数は、最も重要で一般的に使用される配列関数の 1 つです。配列のサイズ (読み取り: 配列内の要素の数) を返します。これは主に、ループ数が配列内のすべての要素の数と一致していることを確認するために、ループ カウンターで使用されます。 連想配列を使用している場合は、array_keys() 関数と array_values() 関数を使用して、配列内のすべてのキーと対応する値のリストを簡単に取得できます。
<ol class="dp-xml"><li class="alt">
<span><strong><font color="#006699"><span class="tag"><?</SPAN><SPAN class=tag-name>php</SPAN></FONT></STRONG><SPAN> // define an array $</SPAN><SPAN class=attribute><FONT color=#ff0000>menu</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>('breakfast' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></span></font></strong></span><span> 'bacon and eggs', 'lunch' =</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> 'roast beef', 'dinner' =</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> 'lasagna'); <br>/* returns the array ('breakfast', 'lunch', 'dinner') with numeric indices */ $</span><span class="attribute"><font color="#ff0000">result</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">array_keys</font></span><span>($menu); print_r($result); <br>print "</span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>br</SPAN></FONT></STRONG><SPAN> </SPAN><SPAN class=tag><STRONG><FONT color=#006699>/></span></font></strong><span>"; /* returns the array ('bacon and eggs', 'roast beef', 'lasagna') with numeric indices */ $</span><span class="attribute"><font color="#ff0000">result</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">array_values</font></span><span>($menu); <br>print_r($result); </span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li></ol>

ただし、配列内のすべての要素を抽出する簡単な方法は次のとおりです。 PHP 4.0 では、配列を繰り返し列挙する目的に特化して設計された非常に新しいタイプのループ、foreach() ループ (その構文構造は同じ名前の Perl 構造に似ています) を導入しています。

その構文形式は次のとおりです:

<ol class="dp-xml"><li class="alt"><span><span>foreach ($array as $temp) { do this! } </span></span></li></ol>

foreach() ループは、パラメーターとして渡された配列の各要素に対して 1 回実行され、反復ごとに配列を前方に走査します。 for() ループとは異なり、配列内の位置を自動的に追跡するため、カウンターを使用したり、関数 sizeof() を呼び出したりする必要はありません。実行のたびに、中括弧内のステートメントが実行され、一時的な PHP 配列ループ変数を通じて現在選択されている配列要素にアクセスします。

その仕組みをよりよく理解するために、foreach() ループを使用して前の例を書き直すことを検討してください。

<ol class="dp-xml"><li class="alt"><span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>html</SPAN><SPAN class=tag>></span></font></strong><span> </span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>head</SPAN><SPAN class=tag>></span><span class="tag"></</SPAN><SPAN class=tag-name>head</SPAN><SPAN class=tag>></span></font></strong><span> </span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>body</SPAN><SPAN class=tag>></span></font></strong><span> My favourite bands are: </span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>ul</SPAN><SPAN class=tag>></span></font></strong><span> </span><strong><font color="#006699"><span class="tag"><?</SPAN><SPAN class=tag-name>php</SPAN></FONT></STRONG><SPAN> // define array $</SPAN><SPAN class=attribute><FONT color=#ff0000>artists</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array<br></FONT></SPAN><SPAN>('Metallica', 'Evanescence', 'Linkin Park', 'Guns n Roses'); // loop over it // print array elements foreach ($artists as $a)<br>{ echo '</SPAN><STRONG><FONT color=#006699><SPAN class=tag><</SPAN><SPAN class=tag-name>li</SPAN><SPAN class=tag>></span></font></strong><span>'.$a; } </span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span><strong><font color="#006699"><span class="tag"></</SPAN><SPAN class=tag-name>ul</SPAN><SPAN class=tag>></span></font></strong><span> </span><strong><font color="#006699"><span class="tag"></</SPAN><SPAN class=tag-name>body</SPAN><SPAN class=tag>></span></font></strong><span> </span><strong><font color="#006699"><span class="tag"></</SPAN><SPAN class=tag-name>html</SPAN><SPAN class=tag>></span></font></strong><span> </span></span></li></ol>

ループが実行されるたびに、現在選択されている配列要素の値が、一時変数 $ に配置されます。 。この変数は、PHP 配列ループ ブロック内のステートメントで使用できます。 foreach() ループは配列内の位置を追跡するためのカウンターを必要としないため、標準の for() ループよりもメンテナンスの必要が少なく、読みやすくなっています。ああ、そうです...追加のプログラミングを必要とせずに、連想配列でも動作します。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446462.html技術記事大量のデータを取得したい場合は、配列をループする必要があります。データを取得するための PHP 配列ループを見てみましょう。データを配列に配置するのは私たちの役割なので、今度はそれをどのように配置するか...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。