- <?php
 - $arr=array('a','b','c','d');
 - $result=array();
 - $t= getCombinationToString($arr, 1);
 - print_r($t);
 - $t= getCombinationToString($arr, 2);
 - $t2= getunique($t);
 - print_r($t2);
 - $t= getCombinationToString($arr, 3);
 - $t2= getunique($t);
 - print_r($t2);
 - $t= getCombinationToString($arr, 4);
 - $t2= getunique($t);
 - print_r($t2);
 - functiongetunique($t){
 - $t2=array();
 - //print_r($t);
 - for($i=0;$i<count($t);$i++){
 - $count_list=array_count_values($t[$i]);
 - $flag= 1;
 - <a href="/tags.php/foreach/" target="_blank">foreach</a>($count_listas$ck=>$cv){
 - if($cv>1){
 - $flag= 0;
 - break;
 - }
 - }
 - if($flag){
 - sort($t[$i]);
 - $flag2= 1;
 - if($t2){
 - foreach($t2as$t2k=>$t2v){
 - if($t[$i]==$t2v){
 - $flag2= 0;
 - break;
 - }
 - }
 - }
 - if($flag2){
 - $t2[] =$t[$i];
 - }
 - }
 - }
 - return$t2;
 - }
 - functiongetCombinationToString($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($retas$row) {
 - //$result[] = $s . $row;
 - $temp=array();
 - $temp[] =$s;
 - if(is_array($row)){
 - $temp=array_merge($temp,$row);
 - }else{
 - $temp[] =$row;
 - }
 - sort($temp);
 - $result[] =$temp;
 - } //Vevb.com
 - }
 - return$result;
 - }
 - ?>
 
新闻热点
疑难解答