PHP Handbuch
Zurück |  | Nach vorne

# strnatcmp

(PHP 4 >= 4.0.0)

strnatcmp -- String-Vergleich unter Verwendung einer "natürlichen Ordnung"

## Beschreibung:

``int strnatcmp` (string str1, string str2)`

Diese Funktion implemetiert einen Vergleich, der alphanumerische Zeichen "menschlich" einordnet (auch "natürliche Ordnung" genannt). Der Unterschied zwischen dieser und der regulären String-Sortierung eines Computer (unter Verwendung von 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
    )

Für weitere Infos siehe 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(), strnatcasecmp(), strstr(), natsort() und natcasesort() .

Zurück | Zum Anfang | Nach vorne
strlen | Nach oben | strnatcasecmp