3v4l.org

run code in 300+ 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.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
0 2 3 1

preferences:
136.11 ms | 407 KiB | 5 Q