how to count the words in a specific string in PHP?

Waseem Abu Senjer picture Waseem Abu Senjer · Jan 24, 2011 · Viewed 50.3k times · Source

I want to count the words in a specific string , so I can validate it and prevent users to write more than 100 words for example .

I wrote this function but I don't think it's effective enough , I used the explode function with space as a delimiter but what if the user puts two spaces instead of one . can you give me a better way to do that ?

function isValidLength($text , $length){

   $text  = explode(" " , $text );
   if(count($text) > $length)
          return false;
   else
          return true;
}

Answer

Francesco Laurita picture Francesco Laurita · Jan 24, 2011

Maybe str_word_count could help

http://php.net/manual/en/function.str-word-count.php

$Tag  = 'My Name is Gaurav'; 
$word = str_word_count($Tag);
echo $word;