How to find number of characters in a string in PHP ?
Last Updated :
11 Jul, 2024
We have given a string and the task is to count number of characters in a string str in PHP. In order to do this task, we have the following methods in PHP:
Method 1: Using strlen() Method
The strlen() method is used to get the length of a given string str. Length of the string including all the white spaces and special characters in this method.
Syntax:
strlen( $string )
Example :
PHP
<?php
// PHP program to count all
// characters in a string
$str = " Geeks for Geeks ";
// Using strlen() function to
// get the length of string
$len = strlen($str);
// Printing the result
echo $len;
?>
Method 2: Using mb_strlen() Method
The mb_strlen() method is used to return the number of characters in a string having character encoding. A multi-byte character is counted as 1.
Syntax:
mb_strlen($str, $encoding);
Note: Before using this function, install the php7.0-mbstring package using the following command:
sudo apt install php7.0-mbstring
Example :
PHP
<?php
// PHP program to count all
// characters in a string
$str = " Geeks for Geeks ";
// Using mb_strlen() function
// to get the length of string
$len = mb_strlen($str);
// Printing the result
echo $len;
?>
Output
19
Method 3: Using iconv_strlen() Method
The iconv_strlen() method is used to get the character count of a string, as an integer.
Syntax:
int iconv_strlen( string $str,
string $charset = ini_get("iconv.internal_encoding"))
Example :
PHP
<?php
// PHP program to count number
// of characters in a string
$str = " Geeks for Geeks ";
// Using iconv_strlen() function
// to get the length of string
$len = iconv_strlen($str);
// Printing the result
echo $len;
?>
Method 4: Using grapheme_strlen() Method
The grapheme_strlen() method is used to get the string length in grapheme units (not bytes or characters).
Syntax:
int grapheme_strlen(string $input)
Example :
PHP
<?php
// PHP program to count number
// of characters in a string
$str = " Geeks for Geeks ";
// Using grapheme_strlen() function
// to get the length of string
$len = grapheme_strlen($str);
// printing the result
echo $len;
?>
Method 5: Using preg_match_all()
You can count the number of characters in a string using preg_match_all() in PHP. By using a regular expression that matches each character individually, you can count the occurrences of all characters in the string.
Example:
PHP
<?php
$string = "Hello World!";
// Use preg_match_all() to count all characters
preg_match_all('/./u', $string, $matches);
$numChars = count($matches[0]);
echo $numChars; // Output: 12 (including space and punctuation)
?>
Using for Loop
Using a for loop in PHP, you can count the number of characters in a string by iterating through each character until the end of the string.
Example:
PHP
<?php
$string = "Hello, World!";
$length = 0;
for ($i = 0; isset($string[$i]); $i++) {
$length++;
}
echo $length . PHP_EOL;
?>
Using foreach
In this approach we iterate through each character of the string using a foreach loop and count them.
Example:
PHP
<?php
$string = "Welcome to GeeksForGeeks!";
$length = 0;
foreach (str_split($string) as $char) {
$length++;
}
echo "Number of characters: $length";
?>
OutputNumber of characters: 25