У меня есть этот массив:
$array = array( 57, 53, 52 );
Я хочу получить все уникальные комбинации этих чисел (порядок элементов не имеет значения).
Я хочу результатв соответствии с:
// 57
// 57, 53
// 57, 53, 52
// 53
// 52
// 52, 57
Я использую эту функцию, но она возвращает каждую комбинацию значений, и, так как мне все равно, в каком порядке они представляют собой один и тот же результат, просто в другом порядке:
function my_function( $array ) {
$combinations = array();
$words = sizeof( $array );
$combos = 1;
for( $i = $words; $i > 0; $i-- ) {
$combos *= $i;
}
while( sizeof( $combinations ) < $combos ) {
shuffle($array);
$combo = implode( " ", $array );
if( !in_array( $combo, $combinations ) ) {
$combinations[] = $combo;
}
}
return $combinations;
}
print_r( my_function( $array ) );
Как мне этого добиться?