Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

strnatcmp

String-Funktionen

    Befehl:
int strnatcmp ( string $str1 , string $str2 )


    Parameter-Liste:
NameBeschreibung
str1Die erste Zeichenkette.
str2Die zweite Zeichenkette.

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

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


    Aktiv in Version:
(PHP 4, PHP 5, PHP 7)

    Siehe auch:
Führt eine Suche mit einem regulären Ausdruck durch
 
Vergleich zweier Strings (Binary safe)
 
Vergleich von Zeichenketten ohne Unterscheidung der Gross- und Kleinschreibung (Binary safe)
 
Gibt einen Teil eines Strings zurück
 
Wie strstr, aber unabhängig von Gross- bzw. Kleinschreibung
 
Binärdaten-sicherer und gross- und kleinschreibungs-unabhängiger Stringvergleich der ersten n Zeichen
 
String-Vergleich der ersten n Zeichen (Binary safe)
 
Findet das erste Vorkommen eines Strings
 
Setzt Locale Informationen
 
Sortiert ein Array in "natürlicher Reihenfolge"
 
Sortiert ein Array in "natürlicher Reihenfolge", Gross/Kleinschreibung wird ignoriert
 

strnatcmp() - Beispiel:


Eingabe:
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);
?>


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
)

Beschreibung:
Mit strnatcmp() kann man Zeichenketten (str1 und str2) nach einer nat�rlichen Sortierreihenfolge vergleichen (d.h. so, wie ein Mensch sortieren w�rde). Bei der nat�rlichen Sortierreihenfolge wird nicht unbedingt jedes Zeichen verglichen, so wie das der Computer bei einem String-Vergleich macht. So ist bei einem Vergleich die Zahl 10 "kleiner" als die Zahl 2, da jedes Zeichen miteinander verglichen wird und die ersten Zeichen nun mal die 1 und die 2 sind, wobei die Zahl 1 kleiner als 2 ist. Bei den Vergleichen wird zwischen Gross- und Kleinschreibung unterschieden.
String-Funktionen