[ create a new paste ] login | about

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

PHP, pasted on Oct 4:
<?php
$data = array(
    "vehicle" => array(
        'vehicle=car',
        'vehicle=bike',
        'vehicle=plane',
    ),
    "fruit" => array(
        'fruit=apple',
        'fruit=banana',
        'fruit=strawberry'
    ),
    "music" => array(
        'music=pop',
        'music=rock',
        'music=jazz'
    )
);
function hop($index, $query, $data){
  $keys = array_keys($data);
  if($index == count($data)){
			return;
	}
  $queryBackup = $query;
  for($i=0;$i<count($data[$keys[$index]]);$i++){
    $query = $queryBackup;
		if($index == 0){
			$query = "?".$data[$keys[$index]][$i];
		}else{
                    if($query != "?"){
		        $query .= "&".$data[$keys[$index]][$i];
                    }else{
                        $query .= $data[$keys[$index]][$i];
                    }
		}
    echo $query."\n";
		hop($index+1, $query, $data);
	}
        if($index == 0){
            $query = "?";
        }else{
            $query = $queryBackup;
        }
    	hop($index+1, $query, $data);
}

ksort($data);
hop(0,"", $data);
?>


Output:
?fruit=apple
?fruit=apple&music=pop
?fruit=apple&music=pop&vehicle=car
?fruit=apple&music=pop&vehicle=bike
?fruit=apple&music=pop&vehicle=plane
?fruit=apple&music=rock
?fruit=apple&music=rock&vehicle=car
?fruit=apple&music=rock&vehicle=bike
?fruit=apple&music=rock&vehicle=plane
?fruit=apple&music=jazz
?fruit=apple&music=jazz&vehicle=car
?fruit=apple&music=jazz&vehicle=bike
?fruit=apple&music=jazz&vehicle=plane
?fruit=apple&vehicle=car
?fruit=apple&vehicle=bike
?fruit=apple&vehicle=plane
?fruit=banana
?fruit=banana&music=pop
?fruit=banana&music=pop&vehicle=car
?fruit=banana&music=pop&vehicle=bike
?fruit=banana&music=pop&vehicle=plane
?fruit=banana&music=rock
?fruit=banana&music=rock&vehicle=car
?fruit=banana&music=rock&vehicle=bike
?fruit=banana&music=rock&vehicle=plane
?fruit=banana&music=jazz
?fruit=banana&music=jazz&vehicle=car
?fruit=banana&music=jazz&vehicle=bike
?fruit=banana&music=jazz&vehicle=plane
?fruit=banana&vehicle=car
?fruit=banana&vehicle=bike
?fruit=banana&vehicle=plane
?fruit=strawberry
?fruit=strawberry&music=pop
?fruit=strawberry&music=pop&vehicle=car
?fruit=strawberry&music=pop&vehicle=bike
?fruit=strawberry&music=pop&vehicle=plane
?fruit=strawberry&music=rock
?fruit=strawberry&music=rock&vehicle=car
?fruit=strawberry&music=rock&vehicle=bike
?fruit=strawberry&music=rock&vehicle=plane
?fruit=strawberry&music=jazz
?fruit=strawberry&music=jazz&vehicle=car
?fruit=strawberry&music=jazz&vehicle=bike
?fruit=strawberry&music=jazz&vehicle=plane
?fruit=strawberry&vehicle=car
?fruit=strawberry&vehicle=bike
?fruit=strawberry&vehicle=plane
?music=pop
?music=pop&vehicle=car
?music=pop&vehicle=bike
?music=pop&vehicle=plane
?music=rock
?music=rock&vehicle=car
?music=rock&vehicle=bike
?music=rock&vehicle=plane
?music=jazz
?music=jazz&vehicle=car
?music=jazz&vehicle=bike
?music=jazz&vehicle=plane
?vehicle=car
?vehicle=bike
?vehicle=plane


Create a new paste based on this one


Comments: