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

Modern Toys, Magical Moments: Why the Best Toy Shop in Noida Is More Than Just a Store

When it comes to children, there’s one universal truth: the right toy can spark imagination, build skills, and make memories…

6 months ago

Rediscovering Joy: A New Era of Creativity & Comfort in Toy Stores

In today’s digital age, where screens and gadgets dominate our children’s lives, there’s something heartwarming about a well-loved plush toy…

6 months ago

Unboxing Imagination: Discovering the Joy of Play at a Toy Store in Noida

In a world dominated by screens and fast-paced routines, it’s easy to forget the simple magic of a toy in…

6 months ago

Imagination Unboxed: Discover Joy at the Toy Shop in Delhi

In the heart of Delhi’s vibrant streets lies a world where imagination meets innovation — the magical universe of toys.…

6 months ago

Play with Purpose: Discovering the Ultimate Toy Store in Noida

When was the last time a toy truly amazed you—not just as a product, but as a thoughtful tool for…

6 months ago

From Tears to Toys: Exploring Modern Childhood through Delhi’s Favorite Toy Shop

In the digital age, the way we experience childhood has changed, but the essence remains the same—imagination, exploration, and joy.…

6 months ago