strnatcmp

(PHP 4, PHP 5)

strnatcmp --  String-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). Der Unterschied zwischen dieser und der regulären String-Sortierung eines Computers (verwendet in strcmp()) wird in dem folgenden Beispiel gezeigt:

$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);

Der o.a. Code erzeugt die 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 Pool's Natural Order String Comparison Seite.

Ähnlich anderen String-Vergleichs-Funktionen gibt diese < 0 zurück, wenn str1 kleiner ist als str2 bzw. > 0, wenn str1 größer ist als str2 oder 0, wenn sie gleich sind.

Dieser Vergleich unterscheidet Groß- und Kleinschreibung.

Siehe auch ereg(), strcasecmp(), substr(), stristr(), strcmp(), strncmp(), strncasecmp(), strnatcasecmp(), strstr(), natsort() und natcasesort().

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 17:57:08