Friday, October 17, 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
32361 POSTS0 COMMENTS
Milvus
88 POSTS0 COMMENTS
Nango Kala
6728 POSTS0 COMMENTS
Nicole Veronica
11892 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11954 POSTS0 COMMENTS
Shaida Kate Naidoo
6852 POSTS0 COMMENTS
Ted Musemwa
7113 POSTS0 COMMENTS
Thapelo Manthata
6805 POSTS0 COMMENTS
Umr Jansen
6801 POSTS0 COMMENTS