I have an alphabet array:
$ga = array_merge(range('A', 'Z'), range(0,9));
How can I generate next strings:
AAAA, AAAB... AAAZ, AAA0... AAA9, AABA, AA9A... ABAA... 9999
Thanks!
I have an alphabet array:
$ga = array_merge(range('A', 'Z'), range(0,9));
How can I generate next strings:
AAAA, AAAB... AAAZ, AAA0... AAA9, AABA, AA9A... ABAA... 9999
Thanks!
This probably is the easiest approach:
<?php
$alphabeth = array_merge(range('A', 'Z'), range(0,9));
$character = [];
foreach ($alphabeth as $character[0]) {
foreach ($alphabeth as $character[1]) {
foreach ($alphabeth as $character[2]) {
foreach ($alphabeth as $character[3]) {
$catalog[] = vsprintf('%s%s%s%s', $character);
}
}
}
}
print_r($catalog);
The output obviously is:
Array
(
[0] => AAAA
[1] => AAAB
[2] => AAAC
[3] => AAAD
.....
[1679613] => 9997
[1679614] => 9998
[1679615] => 9999
)
UPDATE:
You mention in the comments below that you need to fill these strings into a file, if I got you right. If so, then this would be an example for a sequential processing which dramatically reduces the scripts memory footprint, as also mentioned in the comments:
<?php
$alphabeth = array_merge(range('A', 'Z'), range(0,9));
$handle = fopen('/home/arkascha/catalog.list', 'w');
foreach ($alphabeth as $character[0]) {
foreach ($alphabeth as $character[1]) {
foreach ($alphabeth as $character[2]) {
foreach ($alphabeth as $character[3]) {
fwrite($handle, vsprintf("%s%s%s%s
", $character));
}
}
}
}
fclose($handle);