IT. Expert System.

PHP

String comparisons using a "natural order" algorithm


strnatcmp

(PHP 4, PHP 5)

strnatcmpString comparisons using a "natural order" algorithm

Description

int strnatcmp ( string $str1 , string $str2 )

This function implements a comparison algorithm that orders alphanumeric strings in the way a human being would, this is described as a "natural ordering". Note that this comparison is case sensitive.

Parameters

str1

The first string.

str2

The second string.

Return Values

Similar to other string comparison functions, this one returns < 0 if str1 is less than str2; > 0 if str1 is greater than str2, and 0 if they are equal.

Examples

An example of the difference between this algorithm and the regular computer string sorting algorithms (used in strcmp()) can be seen below:

<?php
$arr1 
$arr2 = array("img12.png""img10.png""img2.png""img1.png");
echo 
"Standard string comparison\n";
usort($arr1"strcmp");
print_r($arr1);
echo 
"\nNatural order string comparison\n";
usort($arr2"strnatcmp");
print_r($arr2);
?>

The above example will output:

 Standard string comparison Array (  [0] => img1.png  [1] => img10.png  [2] => img12.png  [3] => img2.png ) Natural order string comparison Array (  [0] => img1.png  [1] => img2.png  [2] => img10.png  [3] => img12.png ) 
For more information see: Martin Pool's » Natural Order String Comparison page.

See Also

  • preg_match() - Perform a regular expression match
  • strcasecmp() - Binary safe case-insensitive string comparison
  • substr() - Return part of a string
  • stristr() - Case-insensitive strstr
  • strcmp() - Binary safe string comparison
  • strncmp() - Binary safe string comparison of the first n characters
  • strncasecmp() - Binary safe case-insensitive string comparison of the first n characters
  • strnatcasecmp() - Case insensitive string comparisons using a "natural order" algorithm
  • strstr() - Find the first occurrence of a string
  • natsort() - Sort an array using a "natural order" algorithm
  • natcasesort() - Sort an array using a case insensitive "natural order" algorithm



Content

Android Reference

Java basics

Java Enterprise Edition (EE)

Java Standard Edition (SE)

SQL

HTML

PHP

CSS

Java Script

MYSQL

JQUERY

VBS

REGEX

C

C++

C#

Design patterns

RFC (standard status)

RFC (proposed standard status)

RFC (draft standard status)

RFC (informational status)

RFC (experimental status)

RFC (best current practice status)

RFC (historic status)

RFC (unknown status)

IT dictionary

License.
All information of this service is derived from the free sources and is provided solely in the form of quotations. This service provides information and interfaces solely for the familiarization (not ownership) and under the "as is" condition.
Copyright 2016 © ELTASK.COM. All rights reserved.
Site is optimized for mobile devices.
Downloads: 3310 / . Delta: 0.03345 с