String-Funktionen
PHP Manual

strnatcmp

(PHP 4, PHP 5)

strnatcmpString-Vergleich unter Verwendung einer "natürlichen Ordnung"

Beschreibung

int strnatcmp ( string $str1 , string $str2 )

Diese Funktion implemetiert einen Vergleichsalgorithmus, der alphanumerische Zeichenketten "menschlich" ordnet (auch "natürliche Ordnung" genannt). Beachten Sie, dass der Vergleich Groß- und Kleinschreibung berücksichtigt.

Parameter-Liste

str1

Die erste Zeichenkette.

str2

Die zweite Zeichenkette.

Rückgabewerte

Gibt einen Wert < 0 zurück, wenn str1 in der natürlichen Sortierung vor str2 steht, einen Wert > 0, wenn str1 in der natürlichen Sortierung hinter str2 steht, und 0, wenn sie gleich sind.

Beispiele

Der Unterschied zwischen dieser und der regulären String-Sortierung eines Computers (wie sie strcmp() verwendet) wird in dem folgenden Beispiel gezeigt:

<?php
$arr1 
$arr2 = array("img12.png""img10.png""img2.png""img1.png");
echo 
"Normaler String-Vergleich\n";
usort($arr1"strcmp");
print_r($arr1);
echo 
"\nVergleich mittels natürlicher Ordnung\n";
usort($arr2"strnatcmp");
print_r($arr2);
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Normaler String-Vergleich
Array
(
    [0] => img1.png
    [1] => img10.png
    [2] => img12.png
    [3] => img2.png
)

Vergleich mittels natürlicher Ordnung
Array
(
    [0] => img1.png
    [1] => img2.png
    [2] => img10.png
    [3] => img12.png
)
Weitere Informationen finden Sie auf Martin Pools » Natural Order String Comparison-Seite.

Siehe auch


String-Funktionen
PHP Manual