ホームページ > バックエンド開発 > PHPの問題 > PHPで配列を走査する5つの方法は何ですか

PHPで配列を走査する5つの方法は何ですか

青灯夜游
リリース: 2023-03-16 06:46:01
オリジナル
5847 人が閲覧しました

5 つのトラバーサル メソッド: 1. "for($i=0;$i$v)" を使用します。 3. "while(list($k,$v)=each(array))" を使用します; 4. "array_map(callback function, array)" などを使用します。

PHPで配列を走査する5つの方法は何ですか

#このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

#php で配列を走査する 5 つの方法

#方法 1: for ループ ステートメントを使用する

for ループは、制御する変数を事前定義します。ループ数 for ステートメントでは、for ループ ステートメントは既知のループ数に従ってループ操作を実行できます。これは、スクリプトを実行する必要がある回数が明確にわかっている状況に適しています。

for ループの構文形式は次のとおりです:

for (初始化语句; 循环条件; 变量更新--自增或自减) {
    语句块;  
}
ログイン後にコピー

以下のコード例を見てみましょう:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array(2,"数学","梨子",3.14,"榴莲",12);
for ($i=0; $i < count($array); $i++) { 
    echo $array[$i] . "<br/>";
} 
?>
ログイン後にコピー

出力結果:


PHPで配列を走査する5つの方法は何ですか

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

foreach は、配列を走査するために特別に設計されたステートメントで、配列を走査するときによく使用されるメソッドです。これは非常に便利です; PHP5 以降では、オブジェクトをトラバースすることもできます (foreach は配列とオブジェクトにのみ適用できます)。

foreach ステートメントは、配列の添字に関係なく配列を走査し、不連続なインデックス配列や文字列を添字として持つ連想配列に使用できます。

コード例を詳しく見てみましょう:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
foreach ($array as $val){
    echo "值是:" . $val ;
    echo "<br/>";
}
echo "<br/>";
foreach ($array as $key => $value) { 
    echo "键名为:".$key.",键值为:".$value . "<br/>";
} 
?>
ログイン後にコピー

出力結果:


PHPで配列を走査する5つの方法は何ですか

指定されたものを走査します。 $array 配列では、各ループで、現在の配列の値が $value に割り当てられ、キー名が $key に割り当てられます。

方法 3: while ループ each() list()

each() 関数を使用して、配列内の現在のキー値を返し、配列ポインターを移動します前進。 each() が実行された後、配列ポインタは配列内の次の要素に留まるか、配列の終わりに達すると最後の要素に留まります。

list() 関数は、1 回の操作で一連の変数に値を割り当てるために使用されます。

while ループ each() 関数 list() 関数は配列を走査できます。以下のコード例を見てみましょう:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
while( list($key, $val) = each($array) ) {
    echo "$key => $val<br>";
}
?>
ログイン後にコピー

出力結果:


PHPで配列を走査する5つの方法は何ですか

方法 4: array_map() 関数を使用する

匿名関数を使用して、配列内の各要素を処理します。走査が完了したら新しい配列を返します

<?php
$arr = ['a', 'b', 'c'];
var_dump($arr);
$arr = array_map(function ($item) {
    return $item . '_i';
}, $arr);
var_dump($arr);
?>
ログイン後にコピー

PHPで配列を走査する5つの方法は何ですか複数の配列を同時に処理できます

<?php
header('content-type:text/html;charset=utf-8');   
$arr_1 = ['a', 'b', 'c'];
$arr_2 = ['你', '好', '吗', '原', '罪'];
// $arr_n = [...];
$arr = array_map(function ($item_1, $item_2) {
    return $item_1 . '_' . $item_2 . '_i';
}, $arr_1, $arr_2);

var_dump($arr); // ['a_你_i', 'b_好_i', 'c_吗_i', '_原_i', '_罪_i']
?>
ログイン後にコピー

PHPで配列を走査する5つの方法は何ですか

方法 5: array_walk() 関数

を使用して、参照渡しの形式で配列を走査します。戻り値はなく、1 つの配列のみを処理できます。

<?php
$arr = ['a', 'b', 'c'];
array_walk($arr, function (&$item) {
    $item = $item . '_i';
});

var_dump($arr); 
?>
ログイン後にコピー

PHPで配列を走査する5つの方法は何ですか

&$item

に気づきましたか? はい、仮パラメータを表す追加の & があります。参照により受信しました。あなたがしなければならないのは、このパラメータを変更する方法を見つけることだけです。 推奨学習: 「

PHP ビデオ チュートリアル

以上がPHPで配列を走査する5つの方法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
関連するチュートリアル
人気のおすすめ
最新のコース
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート