国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP實現數組的笛卡爾積運算示例

2024-05-05 00:01:27
字體:
來源:轉載
供稿:網友

本文實例講述了PHP實現數組的笛卡爾積運算。分享給大家供大家參考,具體如下:

數組的笛卡爾積在實際中還是挺有用處的,比如計算商品的規格時就經常用到,下面寫一種實現方式,如下代碼

$arr = array(  array(2),  array(6,7),  array('a','b','c'));function dikaer($arr){ $arr1 = array(); $result = array_shift($arr); while($arr2 = array_shift($arr)){  $arr1 = $result;  $result = array();  foreach($arr1 as $v){   foreach($arr2 as $v2){    if(!is_array($v))$v = array($v);    if(!is_array($v2))$v2 = array($v2);    $result[] = array_merge_recursive($v,$v2);   }  } } return $result;}

以上例子輸出的結果如下:

Array(  [0] => Array    (      [0] => 2      [1] => 6      [2] => a    )  [1] => Array    (      [0] => 2      [1] => 6      [2] => b    )  [2] => Array    (      [0] => 2      [1] => 6      [2] => c    )  [3] => Array    (      [0] => 2      [1] => 7      [2] => a    )  [4] => Array    (      [0] => 2      [1] => 7      [2] => b    )  [5] => Array    (      [0] => 2      [1] => 7      [2] => c    ))

如果需要輸出字符串形式的結果可以把代碼改成這樣

function dikaer($arr){ $arr1 = array(); $result = array_shift($arr); while($arr2 = array_shift($arr)){  $arr1 = $result;  $result = array();  foreach($arr1 as $v){   foreach($arr2 as $v2){    $result[] = $v.','.$v2;   }  } } return $result;}

輸出結果如下所示:

Array(  [0] => 2,6,a  [1] => 2,6,b  [2] => 2,6,c  [3] => 2,7,a  [4] => 2,7,b  [5] => 2,7,c)

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 淮南市| 赣榆县| 竹山县| 府谷县| 海丰县| 闽侯县| 昭通市| 清苑县| 柘荣县| 肥乡县| 通化市| 常熟市| 文登市| 如皋市| 屏东市| 平凉市| 寿阳县| 剑河县| 长泰县| 银川市| 新乡县| 葵青区| 庆元县| 广州市| 定西市| 安义县| 富锦市| 巢湖市| 永兴县| 岗巴县| 滦南县| 专栏| 海安县| 云林县| 桑植县| 云和县| 灌云县| 平山县| 浦江县| 云和县| 南澳县|