Cześć

Mam tablicę [a,b,c ... n]

I muszę wygenerować dla niej wszystkie wariacje bez powtórzeń.

Czyli dla tablicy 3 elementowej.
A
B
C
A B
A C
B A
B C
A B C
A C B
B A C
B C A
itd.

Nie mogę tego ogarnąć tak aby system jeszcze robił wariacje i z automatu dopasowywał się do ilości elementów tablicy...
Macie może jakiś gotowy fragment kodu ?



Zrób to tak i skończ spamować....

<?php

$array = array('Alpha', 'Beta', 'Gamma', 'Sigma');

function depth_picker($arr, $temp_string, &$collect) {
if ($temp_string != "")
$collect []= $temp_string;

for ($i=0, $iMax = sizeof($arr); $i < $iMax; $i++) {
$arrcopy = $arr;
$elem = array_splice($arrcopy, $i, 1); // removes and returns the i'th element
if (sizeof($arrcopy) > 0) {
depth_picker($arrcopy, $temp_string ." " . $elem[0], $collect);
} else {
$collect []= $temp_string. " " . $elem[0];
}
}
}

$collect = array();
depth_picker($array, "", $collect);
print_r($collect);

?>

Lkingsmiley.png