Categories: PHP

strnatcmp – PHP String Functions

Syntax :

int strnatcmp ( string1, string2 );

Description :

It’s an inbuilt function of PHP. strnatcmp() function compares the two strings  using a “natural” algorithm.

Note: This function is  binary-safe and case-sensitive.

Parameter :

[table caption=”” width=”100%” colwidth=”15%|15%|15%|55%” colalign=”left|left|left|left”]
Name, Required /Optional, Value Type, Description

string1, Required, String, First string to compare.

string2, Required, String, Second string to compare.

[/table]


Output :

Return values in this function are:

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

Related articles : strcmp(), strcasecmp(), substr(), stristr(), strncasecmp(), strncmp(), strstr(), natsort(), natcasesort().


strnatcmp() – PHP Functions Example 1 :
<?php
// case-sensitive comparison
echo strnatcmp("Hi from tutorialmines.","hI FROM TUTORIALMINES."); 
?>

Output of above code in the browser is as below:

-1

strnatcmp() – PHP Functions Example 2 : It returns 0, if the two strings are equal. Case of character does matter here.
<?php
echo strnatcmp("Hi from tutorialmines.","Hi from tutorialmines.");
echo "<br/>";
echo strnatcmp("Hi tutorialmines.","hI from Tutorialmines.");
?>

Output of above code in the browser is as below:

0
-1

strnatcmp () – PHP Functions Example 3 :
<?php
echo "String1 is equal to string2 = ";
echo strnatcmp("Hi from tutorialmines.","Hi from tutorialmines.");
echo "\nString1 is less than string2 = ";
echo strnatcmp("Hi from tutorial.","Hi from tutorialmines.");
echo "\nString1 is greater than string2 = ";
echo strnatcmp("Hi from tutorialmines.","Hi from tutorial.");
?>

Output of above code in the browser is as below:

String1 is equal to string2 = 0
String1 is less than string2 = -1
String1 is greater than string2 = 1

strnatcmp () – PHP Functions Example 4 : difference between this algorithm and the regular computer string sorting algorithms can be seen below:
<?php
$arr1 = $arr2 = array("var12", "var10", "var2", "var1");
echo "Standard string comparison\n";
usort($arr1, "strcmp");
print_r($arr1);
echo "\nNatural order string comparison\n";
usort($arr2, "strnatcmp");
print_r($arr2);
?>

Output of above code in the browser is as below:

Standard string comparison
Array
(
[0] => var1
[1] => var10
[2] => var12
[3] => var2
)

Natural order string comparison
Array
(
[0] => var1
[1] => var2
[2] => var10
[3] => var12
)

jyoti rani

Recent Posts

Exploring the Best Toy Shop in Delhi: A Blend of Fun, Learning, and Creativity

Toys play an integral role in a child’s growth and development. They spark creativity, encourage learning, and provide endless hours…

2 hours ago

What Is a Progressive Web App? Why Would You Need One?

App usage is growing steadily without showing any signs of slowing down. Hence, it is no surprise that mobile applications…

1 year ago

7 Most Popular Paid Online Advertising Strategy

As the world has grown more digital, businesses have adapted themselves. An effectual adaptation includes online advertising. Offline advertising styles…

1 year ago

The Importance of User-Centered Design in Mobile App Development

Step into a world where apps dance to the user's tune. Picture Instagram, a photo-sharing sensation that swept the globe.…

1 year ago

Healthcare Mobile App Development: A Complete Guide for Founders

COVID-19 has led to a digitalization of lifestyle. As patients are taking their mental and physical health more seriously, healthcare…

1 year ago

Exploring Diverse WordPress Theme Niches: A Comprehensive Guide

Introduction WordPress, an immensely popular content management system (CMS), powers over 40% of the internet. What makes WordPress even more…

1 year ago