Подсчет количества слов в строке
Если в тексте только латиница, то проще всего использовать функцию str_word_count()
:
Скопировано
$str = 'qqq www eeeee';
echo str_word_count( $str); // вернет 3
$str = 'qqq www ee5eee';
echo str_word_count( $str); // а вот так уже 4
Показать код
С русским текстом чуть сложнее.
Вариант 1
Скопировано
str_word_count( $str, 0, 'АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя' );
Показать код
Вариант 2
Скопировано
echo count( preg_split( '/\s+/u', $str, null, PREG_SPLIT_NO_EMPTY ) );
Показать код
Вариант 3
Скопировано
count( array_filter( explode( ' ', $str ) ) );
Показать код
Все три варианта при $str = 'здесь какой-то русский and english text';
вернут 6.