3v4l.org

run code in 300+ PHP versions simultaneously
<?php function mostlyUpperInString($s, $threshold) { return preg_match_all("/\p{Lu}/u", $s) / mb_strlen($s) > $threshold; } function moreUpperThanLower($s, $threshold) { return preg_match_all("/\p{Lu}/u", $s) / preg_match_all("/\P{Lu}/u", $s) > $threshold; } $strings = [ "THE 15 SMALL BROWN FOXES JUMP INTO THE BURNING barn!", "The 15 Small Brown Foxes JUMP Into the Burning Barn!" ]; foreach ($strings as $str) { echo $str . " -> 80% mostlyUpperInString: ". (mostlyUpperInString($str, 0.8) ? "true" : "false") . PHP_EOL; echo $str . " -> 80% moreUpperThanLower: ". (moreUpperThanLower($str, 0.8) ? "true" : "false") . PHP_EOL; echo PHP_EOL; }
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
THE 15 SMALL BROWN FOXES JUMP INTO THE BURNING barn! -> 80% mostlyUpperInString: false THE 15 SMALL BROWN FOXES JUMP INTO THE BURNING barn! -> 80% moreUpperThanLower: true The 15 Small Brown Foxes JUMP Into the Burning Barn! -> 80% mostlyUpperInString: false The 15 Small Brown Foxes JUMP Into the Burning Barn! -> 80% moreUpperThanLower: false

preferences:
99.6 ms | 407 KiB | 5 Q