Чтобы построить ответ @dWinder. Вы можете создать список.
foreach(range(0,9999) as $num)
foreach(range('A', 'Z') as $c1)
foreach(range('A', 'Z') as $c2)
// This comes out to 6,760,000 items
// $zips[] = sprintf("%04s%s%s<br>", $num, $c1, $c2);
Если вы просто хотите проверить формат, вы можете выполнить поиск по шаблону.
echo testZipNl('1t00AA') .' 1t00AA<br>';
echo testZipNl('11000AA') .' 11000AA<br>';
echo testZipNl('1000AA') .' 1000AA<br>';
function testZipNl($input){
$input = trim($input);
$regex = "/^[0-9]{4}[A-Z]{2}$/";
if (preg_match($regex, $input) AND strlen($input) == 6) {
return 'True';
}
return 'False';
}