- preg_match: documentation ( source)
<?php
foreach (\DateTimeZone::listIdentifiers(\DateTimeZone::ALL_WITH_BC) as $tz) {
try {
new \DateTimeZone($tz);
if (preg_match('{\AEtc/GMT[+-]\d+\z}', $tz)) {
echo "OK: $tz", PHP_EOL;
}
} catch (\Throwable $ex) {
echo "FAIL: $tz", PHP_EOL;
}
}