ホームページ  >  記事  >  バックエンド開発  >  PHP は再帰アルゴリズムを使用して配列を無限に走査するサンプルコード

PHP は再帰アルゴリズムを使用して配列を無限に走査するサンプルコード

怪我咯
怪我咯オリジナル
2017-07-12 11:41:391952ブラウズ

再帰的アルゴリズムは、問題を、サイズが縮小された同じ種類の問題のサブ問題に変換することです。次に、関数 (またはプロシージャ) が再帰的に呼び出され、問題の解決策が表示されます。

プロセス (または関数) は、それ自体を直接的または間接的に呼び出します。このプロセス (または関数) は、再帰的プロセス (または関数) と呼ばれます。

この記事では、主に、PHP の再帰アルゴリズム配列の走査の使用方法を紹介します。この記事では、1 次元配列2 次元配列、および多次元不規則配列に対する PHP の一般的なトラバーサル手法を例を示して分析します。必要な方は参考にしてください。詳細は次のとおりです。

<?php
//无限遍历数组
$a1 = array("a", "b", "c"); //一维数组
$a2 = array(array(21, 3, 6), array("a", "b", "c")); //二维数组
$a3 = array(array(array(5, 55), 4, 444), 2, 7, 6, 8, array("w", "d", array(3, 2, "a"), "s")); //多维不规则数组
function fun($a) {
  foreach ($a as $val) {
    if (is_array($val)) { //如果键值是数组,则进行函数递归调用
      fun($val);
    } else { // 如果键值是数值,则进行输出
      echo "$val<br />";
    } //end if
    
  } //end foreach
  
} //end fun
//fun($a1);
//fun($a2);
fun($a3);
?>
出力:

りー

以上がPHP は再帰アルゴリズムを使用して配列を無限に走査するサンプルコードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。