PHP String strcasecmp() Function
The PHP String strcasecmp() function is used for comparing two strings called strcasecmp(). It is case insensitive. The ability to define how many characters from each string should be taken into account for the comparison is the only difference between this function and strncasecmp().
Syntax
Below is the syntax of the PHP String strcasecmp() function −
int strcasecmp ( string $string1, string $string2 )
Parameters
Here are the parameters of the strcasecmp() function −
$string1 − (Required) It is the first string to compare.
$string2 − (Required) It is the second string to compare.
Return Value
The strcasecmp() function returns -1 if string1 is less than string2, 1 if string1 is greater than string2, and 0 if the two are equal.
PHP Version
First introduced in core PHP 4, the strcasecmp() function continues to function easily in PHP 5, PHP 7, and PHP 8.
Example 1
Here is the basic example of the PHP String strcasecmp() function to compare two simple strings, ignoring case sensitivity and returns the result.
<?php
$string1 = "Hello";
$string2 = "hello";
$result = strcasecmp($string1, $string2);
if ($result === 0) {
echo "The strings are equal.";
} elseif ($result
Output
Here is the outcome of the following code −
The strings are equal.
Example 2
In the below PHP program, we will use the strcasecmp() function and accept two strings from the user and compares them.
<?php
$string1 = readline("Enter the first string: ");
$string2 = readline("Enter the second string: ");
$result = strcasecmp($string1, $string2);
if ($result === 0) {
echo "Both strings are equal.";
} elseif ($result < 0) {
echo "The first string is less than the second string.";
} else {
echo "The first string is greater than the second string.";
}
?>
Output
This will generate the below output −
Enter the first string: apple
Enter the second string: banana
The first string is less than the second string.
Example 3
Now in the below code an array of strings is sorted case-insensitively by calling strcasecmp() function.
<?php
$strings = ["Banana", "apple", "Cherry", "banana", "Apple"];
usort($strings, function ($a, $b) {
return strcasecmp($a, $b);
});
print_r($strings);
?>
Output
This will create the below output −
Array
(
[0] => apple
[1] => Apple
[2] => Banana
[3] => banana
[4] => Cherry
)
Example 4
In the following example, we are using the strcasecmp() function to filter unique strings from an array while ignoring case sensitivity.
<?php
$strings = ["Dog", "cat", "dog", "CAT", "bird", "Bird"];
$uniqueStrings = [];
foreach ($strings as $string) {
$isUnique = true;
foreach ($uniqueStrings as $unique) {
if (strcasecmp($string, $unique) === 0) {
$isUnique = false;
break;
}
}
if ($isUnique) {
$uniqueStrings[] = $string;
}
}
print_r($uniqueStrings);
?>
Output
Following is the output of the above code −
Array
(
[0] => Dog
[1] => cat
[2] => bird
)
php_function_reference.htm