Thursday, December 25, 2025
HomeLanguagesPHP strncasecmp() Function

PHP strncasecmp() Function


The strncasecmp() function is a built-in function in PHP and is used to compare two given strings. It is case-insensitive. This function is similar to strcasecmp(), the only difference is the provision to specify the number of characters to be used from each string for the comparison.

Syntax:

strncasecmp($string1, $string2, $length)

Parameters: This function accepts two parameters as shown in the above syntax and are described below:

  • $string1, $string2: These parameters specifies the strings to be compared.
  • $length: It specifies the number of characters from each string to be used in the comparison. This parameter is mandatory

Return Value: This function returns an integer based on the conditions as described below:

  • strncasecmp() returns 0 – if the two strings are equal.
  • strncasecmp() returns <0 – if string1 is less than string2
  • strncasecmp() returns >0 – if string1 is greater than string2

Examples:

Input : string1 = "Hello", string2 = "hEllo", length = 6
Output : 0

Input : string1 = "Geeks", string2 = "Gfg", length = 3
Output : -1

Input : string1 = "Nerd", string2 = "Geeks", length = 4
Output : 7

Below programs illustrate the strncasecmp() function in PHP:

Program 1: When the two strings are identical:




<?php
  
$str1 = "Geeks for Geeks ";
$str2 = "Geeks for Geeks ";
  
// Both the strings are equal
$test=strncasecmp($str1, $str2, 16 ); 
  
echo "$test"; 
  
?>


Output :

0

Program 2 : When first string greater than the second string:




<?php
  
// Input strings
$str1 = "Geeks for Geeks ";
$str2 = "Geeks for ";
  
$test=strncasecmp($str1, $str2, 16 ); 
  
// In this case the second string is smaller
echo "$test"; 
  
?>


Output:

6

Program 3: First string is smaller than the second string:




<?php
  
// Input Strings
$str1 = "Geeks for ";
$str2 = "Geeks for Geeks ";
  
$test=strncasecmp($str1, $str2, 16 ); 
  
// In this case the first string is smaller
echo "$test"; 
  
?>


Output:

-6

Program 4: This program illustrates the case-insensitivity of the function:




<?php
  
// Input Strings
$str1 = "GEEKS FOR GEEKS ";
$str2 = "Geeks for Geeks ";
  
// Both the strings are equal
$test=strncasecmp($str1, $str2, 16 ); 
  
echo "$test"; 
  
?>


Output:

0

Program 5: Two strings are of equal length but contain a different character. In such a case the difference between ASCII value of the two characters is displayed. The function returns a positive value if the character in string1 has a greater ASCII value and negative if the character in string2 has a greater ASCII value.




<?php
  
// Input Strings 
$str1 = "Good";
$str2 = "Goon";
  
$test1 = strncasecmp($str1, $str2, 4 ); 
  
// Second string has a character 
// with higher ASCII value
echo "$test1"; 
  
echo "\n";
  
$test2 = strncasecmp($str2, $str1, 4 ); 
  
// First string has a character 
// with higher ASCII value
echo "$test2"; 
  
?>


Output:

-10
10

Reference:
http://php.net/manual/en/function.strncasecmp.php

RELATED ARTICLES

Most Popular

Dominic
32456 POSTS0 COMMENTS
Milvus
111 POSTS0 COMMENTS
Nango Kala
6825 POSTS0 COMMENTS
Nicole Veronica
11960 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12038 POSTS0 COMMENTS
Shaida Kate Naidoo
6959 POSTS0 COMMENTS
Ted Musemwa
7203 POSTS0 COMMENTS
Thapelo Manthata
6912 POSTS0 COMMENTS
Umr Jansen
6893 POSTS0 COMMENTS