This should work for you:
<?php $hello = "aaa"; //'aaa0' -> 'aaa9' for ($count = 0; $count <= 9; $count++) echo $hello . $count . "<br />"; //'aaaa' -> 'aaaz' foreach (range('a', 'z') as $char) echo $hello . $char . "<br />"; //'aaaA' -> 'aaaZ' foreach (range('A', 'Z') as $char) echo $hello . $char . "<br />"; ?>
EDIT:
This only works with 3 digits. After you have exhausted your memory for sure.
<?php $array = array(); $maxLength = 3; $output = array(); ini_set('memory_limit', '-1'); $time_start = microtime(true); foreach(range(0, 9) as $number) $array[] = $number; foreach(range('a', 'z') as $char) $array[] = $char; foreach(range('A', 'Z') as $char) $array[] = $char; function everyCombination($array, $arrLength, $size, $perArr = array(), $pos = 0, &$found = array()) { if ($size == $pos) { $found[] = vsprintf("%s%s%s", $perArr); return; } for ($count = 0; $count < $arrLength; $count++) { $perArr[$pos] = $array[$count]; everyCombination($array, $arrLength, $size, $perArr, $pos+1, $found); } return $found; } $output = everyCombination($array, count($array), $maxLength); for($count = 0; $count < count($output); $count++) echo $output[$count] . "<br/>"; echo "DONE!"; $time_end = microtime(true); $time = $time_end - $time_start; echo round($time,2) . " s"; ?>
source share