3v4l.org

run code in 300+ PHP versions simultaneously
<?php $tests = [ 'аяruski', 'string', '54345', 'é', 'аяruski foo', 'string foo', '54345 foo', 'é foo', ]; var_export( preg_replace_callback( '/^(.)(.*)/u', fn($m) => mb_strtoupper($m[1]) . mb_strtolower($m[2]), $tests ) );

preferences:
24.04 ms | 407 KiB | 5 Q