[ create a new paste ] login | about

Link: http://codepad.org/vndOI9Yj    [ raw code | output | fork ]

PHP, pasted on Sep 21:
<?php

$str = "apple pear banana orange";
$str_splode = explode(' ',$str);
$combos = showCombo(array(), $str_splode);
foreach($combos as $key=>$array){
    echo $key.PHP_EOL;
    displayArrayByKey($key, $array);
}


function displayArrayByKey($str, $arr){
    foreach($arr as $key=>$array){
          $string = $str. " " . $key;
          echo $string . PHP_EOL; 
          if(count($array)> 0){
              displayArrayByKey($string, $array);
          }
    }
}

function showCombo($str_arr, $arr){
    $ret = array();
    foreach($arr as $val){
       if(!in_array($val, $str_arr)){
           $temp = $str_arr;
           $temp[] = $val;
           $ret[$val] = showCombo($temp, $arr);
       }
    }
    return $ret;
}

?>


Output:
apple
apple pear
apple pear banana
apple pear banana orange
apple pear orange
apple pear orange banana
apple banana
apple banana pear
apple banana pear orange
apple banana orange
apple banana orange pear
apple orange
apple orange pear
apple orange pear banana
apple orange banana
apple orange banana pear
pear
pear apple
pear apple banana
pear apple banana orange
pear apple orange
pear apple orange banana
pear banana
pear banana apple
pear banana apple orange
pear banana orange
pear banana orange apple
pear orange
pear orange apple
pear orange apple banana
pear orange banana
pear orange banana apple
banana
banana apple
banana apple pear
banana apple pear orange
banana apple orange
banana apple orange pear
banana pear
banana pear apple
banana pear apple orange
banana pear orange
banana pear orange apple
banana orange
banana orange apple
banana orange apple pear
banana orange pear
banana orange pear apple
orange
orange apple
orange apple pear
orange apple pear banana
orange apple banana
orange apple banana pear
orange pear
orange pear apple
orange pear apple banana
orange pear banana
orange pear banana apple
orange banana
orange banana apple
orange banana apple pear
orange banana pear
orange banana pear apple


Create a new paste based on this one


Comments: