知识屋:更实用的电脑技术知识网站
所在位置:首页 > 编程技术 > PHP编程

PHP输出多个元素的排列组合

发布时间:2015-05-27 19:31:55作者:知识屋

解决问题:求一个含有N个元素的数组中取出M个元素组成新的数组,一共可以组合成的数组并输出
[php] 
<?php 
$arr = array('a','b','c','d'); 
$result = array(); 
$t = getCombinationToString($arr, 4); 
print_r($t); 
 
function getCombinationToString($arr, $m) { 
    if ($m ==1) { 
       return $arr; 
    } 
    $result = array(); 
     
    $tmpArr = $arr; 
    unset($tmpArr[0]); 
    for($i=0;$i<count($arr);$i++) { 
        $s = $arr[$i]; 
        $ret = getCombinationToString(array_values($tmpArr), ($m-1), $result); 
         
        foreach($ret as $row) { 
            $result[] = $s . $row; 
        } 
    } 
     
    return $result; 

?> 
(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜