Friday, August 29, 2025
HomeLanguagesHow to count the number of words in a string in PHP...

How to count the number of words in a string in PHP ?

Given a string containing some words and the task is to count number of words in a string str in PHP. In order to do this task, we have the following approaches:

Approach 1: Using str_word_count() Method: The str_word_count() method is used to counts the number of words in a string.

Syntax:

str_word_count(string, return, char)

Example:

PHP




<?php
// PHP program to count number of
// words in a string 
    
$str = "  Geeks for Geeks  "
    
// Using str_word_count() function to
// count number of words in a string
$len = str_word_count($str);
  
// Printing the result
echo $len
?>


Output

3

Approach 2: Here the idea is to use trim(), preg_replace(), count() and explode() method. 

Step 1: Remove the trailing and leading white spaces using the trim() method and remove the multiple whitespace into a single space using preg_replace() method.

Step 2: Convert the string into an array using the explode() method.

Step 3: Now count() method counts the number of elements in an array.

Step 4: Resultant is the number of words in a string.

Example:

PHP




<?php
// PHP program to count number
// of words in a string 
    
// Function to count the words
function get_num_of_words($string) {
      $string = preg_replace('/\s+/', ' ', trim($string));
      $words = explode(" ", $string);
      return count($words);
}
  
$str = "  Geeks  for    Geeks  "
    
// Function call 
$len = get_num_of_words($str);
  
// Printing the result
echo $len
?>


Output

3

Approach 3: Here the idea is to use trim(), substr_count(), and str_replace() method. 

Step 1: Remove the trailing and leading white spaces using the trim() method.

Step 2: Convert the multiple white spaces into single space using the substr_count() and str_replace() method.

Step 3: Now counts the number of word in a string using substr_count($str, ” “)+1 and return the result.

Example:

PHP




<?php
// PHP program to count number
// of word in a string 
    
// Function to count the words
function get_num_of_words($string) {
    $str = trim($string);
      while (substr_count($str, "  ") > 0) {
        $str = str_replace("  ", " ", $str);
    }
      return substr_count($str, " ")+1;
}
  
$str = "  Geeks  for    Geeks  "
   
// Function call 
$len = get_num_of_words($str);
  
// Printing the result
echo $len
?>


Output

3
RELATED ARTICLES

Most Popular

Dominic
32249 POSTS0 COMMENTS
Milvus
80 POSTS0 COMMENTS
Nango Kala
6617 POSTS0 COMMENTS
Nicole Veronica
11789 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11838 POSTS0 COMMENTS
Shaida Kate Naidoo
6731 POSTS0 COMMENTS
Ted Musemwa
7011 POSTS0 COMMENTS
Thapelo Manthata
6688 POSTS0 COMMENTS
Umr Jansen
6701 POSTS0 COMMENTS