Создать алфавитный ряд переполнения стека

Я хочу создать алфавитный ряд в php. Сериал, который я хочу создать, выглядит примерно так:

AAAA
AAAB
AAAC
.
.
.
.
.
.
.
ZZZY
ZZZZ

Я не хочу никаких номеров. Чистый алфавитный ряд. Какой подход я могу использовать, чтобы создать это? Любые подсказки или псевдокод будут полезны.

Я уже прошла range function и используя ascii значения для печати алфавитов, но все еще не может найти хороший подход для создания такой серии.

1

Решение

Вы также можете использовать while, PHP может увеличивать символы!

$letter = 'AAAA';
while (($letters[] = $letter++) !== 'ZZZZ') {}
print_r($letters);
3

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

Вы можете использовать эту кодировку:

<?php
for ($char = 'AAAA'; $char <= 'Z'; $char++) {
echo $char . "\n";
}
?>
5

Четыре вложенных цикла, повторяющихся по набору всех допустимых символов. Затем все, что вам нужно сделать, это объединить текущий символ каждого цикла в строку:

<?php
$chars = range('A', 'Z');
$words = [];
foreach ($chars as $char1) {
foreach ($chars as $char2) {
foreach ($chars as $char3) {
foreach ($chars as $char4) {
$words[] = $char1 . $char2 . $char3 . $char4;
}
}
}
}
var_dump($words);

Вывод, очевидно, таков:

array(456976) {
[0] =>
string(4) "AAAA"[1] =>
string(4) "AAAB"[2] =>
string(4) "AAAC"[3] =>
string(4) "AAAD"[4] =>
string(4) "AAAE"[5] =>
[...]
1
По вопросам рекламы [email protected]