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
Advertisements