3v4l.org

run code in 500+ PHP versions simultaneously
<?php function count_words(string $string): int { return preg_match_all('/\b(?:[^\W\d_]|-)+\b/u', $string, $matches) ? count($matches[0]) : 0; } echo count_words(' - - - - - - - '), PHP_EOL; // 0 echo count_words('hello world'), PHP_EOL; // 2 echo count_words('hoho hé-hé haha'), PHP_EOL; // 3 echo count_words('hello 123'), PHP_EOL; // 1
Output for 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
0 2 3 1

preferences:
91.28 ms | 1470 KiB | 4 Q