php生成数组与php全组合算法

发布时间:2019-10-23编辑:脚本学堂
分享一个php生成数组的代码,学习下php全组合算法的应用实例,有需要的朋友参考下。

需求:
实现一个7个元素的数组,取出这个数组中的5个元素,生成新的数组,这些数组是唯一的。

代码:
 

复制代码 代码示例:
<?php
$arr = array(1,2,3,4,5);
/*
@ res  组装好的每一注的每个元素
@ $a 临时数组
@ $index 数组索引
@ $arr 请求的数组
@ $b 最后要的结果
*/
$a = array();
$b = array();
$total = 0;
format($a,0,$arr);
function format($res,$index,$arr){
 global $total;
 global $b;
 $new_arr = $res;
 $n_arr = array();
 if($index == count($arr)){
  if(count($new_arr)==5){
   $b[]  = $new_arr;
   echo "<pre>";
   $total++;
  } 
  return;
 }
 format($new_arr,$index+1,$arr);
 $new_arr[] = $arr[$index];
 format($new_arr,$index+1,$arr);
}
echo "<pre>";
print_r($b);
echo "</pre>";