Функции за низове
PHP Manual

strnatcmp

(PHP 4, PHP 5)

strnatcmpСравнява низ с използване на алгоритъма "естествен ред"

Описание

int strnatcmp ( string $str1 , string $str2 )

Тази функция реализира алгоритъма за сравнение, който подрежда буквено-цифрови низове по начина по който би ги подредил човек. Това е познато като "естествен ред". Забележете, че сравняването е чувствително към регистъра.

Параметри

str1

Първият низ.

str2

Вторият низ.

Връщани стойности

Подобно на другите функции за сравняване на низове, връща < 0 ако str1 е по-малък от str2 ; > 0 ако str1 е по-голям от str2 , и 0 ако са равни.

Примери

Като пример за разликата между този алгоритъм и обикновения алгоритъм за сортиране на низове (използван при strcmp()), може да се види по-долу:

<?php
$arr1 
$arr2 = array("img12.png""img10.png""img2.png""img1.png");
echo 
"Стандартно сравняване на низове\n";
usort($arr1"strcmp");
print_r($arr1);
echo 
"\nСравняване на низове посредством алгоритъма \"естествен ред\"\n";
usort($arr2"strnatcmp");
print_r($arr2);
?>

Примерът по-горе ще изведе:

Стандартно сравняване на низове
Array
(
    [0] => img1.png
    [1] => img10.png
    [2] => img12.png
    [3] => img2.png
)

Сравняване на низове посредством алгоритъма "естествен ред"
Array
(
    [0] => img1.png
    [1] => img2.png
    [2] => img10.png
    [3] => img12.png
)

За повече информация вижте: Страницата на Мартин Пул за » сравняване на низове чрез алгоритъма "естествен ред".

Вж. също


Функции за низове
PHP Manual