ホームページ > バックエンド開発 > PHPチュートリアル > php_PHP チュートリアルでの配列メソッドの走査

php_PHP チュートリアルでの配列メソッドの走査

WBOY
リリース: 2016-07-21 14:51:41
オリジナル
882 人が閲覧しました

配列トラバーサルを実装するには多くの方法があります:

1. 連続的にインデックス付けされた配列:

配列のインデックスが連続 (0 1 2...) であるため、連続配列トラバーサルの実装は非常に簡単です。そのため、まず count() 関数を使用して配列内の要素の数を計算し、次に次のように for ループを作成します:

$subject=array("数学","英語","物理");

$num_elements=count($subject); //この時の$num_elementsの値は3です

for ($i=0;$i

echo ("$subject[$i]

ん");

}

結果は次のとおりです:

数学

英語

物理学

配列要素のインデックスはデフォルトで 0 1 2 であるため、ここでは $i に初期値 0 を割り当てます。最初の要素のインデックスが 0 でない場合、必要なのは次のとおりです。

$subject=array(3=>"数学","英語","物理");

$num_elements=count($subject)+3; //ここに注目

;

for ($i=3;$i

echo ("$subject[$i]

ん");

}

ここでは $i に 3 の値が割り当てられており、$num_elements=count($subject)+3 これは見落とされがちです。

2. 不連続なインデックスの配列:

$subject=array("m"=>"数学","e"=>"英語","p"=>"物理学");

ここではインデックス値「m」「e」「p」をそれぞれ持つ配列が作成されます。そのような配列を走査するにはどうすればよいですか?

方法 1: list() 関数と each() 関数を組み合わせて使用​​する

$subject=array("m"=>"数学","e"=>"英語","p"=>"物理学");

reset($subject); //最初の要素へのポインタをリセットします

while (list($key,$value)=each($subject)){

echo "$key は $value です

ん"; }

方法 2: foreach ステートメントを使用する

$subject=array("m"=>"数学","e"=>"英語","p"=>"物理学");

foreach($subject as $key => $value){

echo "$key は $value です

「ん」;

}

?>

list()や each()よりも簡単ではないでしょうか?

foreach と list() each() の組み合わせの違い:

Foreach は、元の配列のコピーに対して操作を実行します。この利点は、現在の配列ポインタの位置に影響を与えないことです。欠点は、大きな配列の場合、コピーに時間がかかることです。

List() each() の組み合わせ これを使ってトラバースするとポインタの位置が変わるのは明らかです。

方法 3: array_walk() 関数を使用して配列を走査する

Array_walk() を使用すると、ユーザーは配列内の各要素を処理する関数をカスタマイズできます。

$subject=array("数学","英語","物理");

関数 printElement($element){

print("$要素

ん");

}

array_walk($subject,"printElement");

上記は、Bangkejia.com が紹介した PHP で配列を走査する方法です。お役に立てば幸いです。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/371793.html技術記事配列を走査するには多くの実装方法があります: 1. 連続的にインデックスが付けられた配列: 配列のインデックスが連続 (0 1 2) であるため、連続配列の走査を実装するのは非常に簡単です。そのため、最初に count...
を使用できます。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート