3v4l.org

run code in 500+ PHP versions simultaneously
<?php $str = <<<'EOD' NW Brockville Se Nashville N Brockville S Nashville E Brockville W Nashville PE Springfield Kr Nashville Sete Nevers EOD; echo preg_replace_callback('~^([ns]?[ew]?\b ?)(?:^[a-z]{2} )?~mi', fn($m) => strtoupper($m[1]), $str);
Output for 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.32, 8.3.0 - 8.3.4, 8.3.6 - 8.3.32, 8.4.1 - 8.4.23, 8.5.0 - 8.5.9
NW Brockville SE Nashville N Brockville S Nashville E Brockville W Nashville Springfield Nashville Sete Nevers
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 NW Brockville SE Nashville N Brockville S Nashville E Brockville W Nashville Springfield Nashville Sete Nevers
Output for 7.3.13 - 7.3.33
Parse error: syntax error, unexpected '=>' (T_DOUBLE_ARROW), expecting ')' in /in/XiUcL on line 20
Process exited with code 255.

preferences:
100.73 ms | 1394 KiB | 4 Q