Перечислите все возможные комбинации в массиве php логического значения в переполнении стека

Я постараюсь лучше объяснить мои потребности.

Мне нужно генерировать из scrach, разнонаправленный массив, который содержит много массивов. Внутренний массив должен быть массивом, содержащим 7 логических значений. Мне нужно иметь все возможные комбинации из 7 логических значений. В 7 случаях это составляет 128 внутренних массивов.

Вот пример вывода, который мне нужен для облегчения понимания:

$sequence = array(
array(true, true, true, true, true, true, true),
array(true, true, true, true, true, true, false),
array(true, true, true, true, true, false, false)
);

Мне нужно иметь все возможные комбинации логических значений для каждого значения 7 массива.

Я пытаюсь найти решение, прежде чем опубликовать это, но я ничего не нашел.

Спасибо за помощь

P-S .: Позже мне нужно будет сделать то же самое, но с 30 булевыми значениями на таблицу вместо 7. Поэтому, если решение может быть гибким, это бонус!

Решение :
Вот как я успешно получил то, что мне нужно, с небольшой модификацией решения, которое я проверил.

<?php

$length = 7;

$totalCombos = pow(2, $length);

$sequences = array();

for($x = 0; $x < $totalCombos; $x++) {
$sequence[$x] = str_split(str_pad(decbin($x), $length, 0, STR_PAD_LEFT));
}

?>

Я добавил str_split для массива отдельных значений.

1

Решение

Это сделает это, и это будет гибким.

<?php

$length = 7;

$totalCombos = pow(2, $length);

for($x = 0; $x < $totalCombos; $x++) {
echo str_pad(decbin($x), $length, 0, STR_PAD_LEFT) . PHP_EOL;
}
2

Другие решения

Других решений пока нет …