Aktueller Standort: Startseite> Neueste Artikel> Detaillierte Erläuterungs- und Verwendungsbeispiele für STRCMP () -Funktion in PHP

Detaillierte Erläuterungs- und Verwendungsbeispiele für STRCMP () -Funktion in PHP

gitbox 2025-06-28

Was ist die Funktion von Strcmp ()

STRCMP () ist eine der String -Funktionen in PHP, die die Größe von zwei Zeichenfolgen vergleicht. Wenn sie gleich sind, kehren Sie 0 zurück; Wenn die erste Saite klein ist, kehren Sie negativ zurück. umgekehrt.

Funktionssyntax

STRCMP (String $ str1, String $ str2): int int

Parameterbeschreibung

$ str1 : Die erste String, die zu vergleichen war

$ str2 : Die zweite String, die zu vergleichen ist

Rückgabewert

Die Funktion STRCMP () gibt eine Ganzzahl zurück, deren Wert auf der Grundlage des Vergleichsergebnisses der Zeichenfolge bestimmt wird. Wenn die beiden Saiten gleich sind, geben Sie 0 zurück; Wenn Zeichenfolge 1 kleiner als Zeichenfolge 2 ist, geben Sie einen Wert von weniger als 0 zurück. Wenn Zeichenfolge 1 größer als Zeichenfolge 2 ist, geben Sie einen Wert von mehr als 0 zurück.

Beispiel

Stringgleichheit

$ str1 = "Hallo Welt";

$ str2 = "Hallo Welt";

echo strcmp ($ str1, $ str2);

Ausgabeergebnis: 0

Beschreibung: $ str1 und $ str2 -Zeichenfolgen sind gleich, so dass Strcmp () Wert 0 zurückgibt.

Saiten sind nicht gleich

$ str1 = "Hallo Welt";

$ str2 = "Hallo Welt!";

echo strcmp ($ str1, $ str2);

Ausgabeergebnis: -1

Beschreibung: Die $ str1 -Zeichenfolge ist kleiner als $ str2, so dass Strcmp () einen Wert von weniger als 0 zurückgibt.

Unterschiede von Operatoren "==" und "==="

In PHP werden zusätzlich zur Verwendung der Funktion von Strcmp () zum Vergleich von Zeichenfolgen auch die Operatoren "==" und "===" verglichen werden, unterscheiden sich jedoch stark von der Funktion von STRCMP ().

Vergleichszeichenfolgen unter Verwendung des Operators "=="

Der Operator "==" wird verwendet, um die Werte von zwei Variablen zu vergleichen. Geben Sie True zurück, wenn ihre Werte gleich sind, andernfalls geben Sie false zurück. Beim Vergleich von zwei Zeichenfolgen kann dies jedoch unvorhersehbare Ergebnisse erzielen.

$ str1 = "123";

$ str2 = "123";

if ($ str1 == $ str2) {echo "true"; } else {echo "false"; }

Ausgabeergebnis: True

Hinweis: Obwohl die Werte von $ str1 und $ str2 unterschiedlich sind, betrachtet der Operator "==" sie immer noch gleich.

Vergleichszeichenfolgen unter Verwendung des Operators "==="

Der Bediener "===" wird verwendet, um die Werte und Arten von zwei Variablen zu vergleichen. Geben Sie True zurück, wenn ihre Werte und Typen gleich sind, ansonsten falsch. Wenn Sie diesen Bediener zum Vergleich von zwei Zeichenfolgen verwenden, funktioniert er wie erwartet.

$ str1 = "123";

$ str2 = "123";

if ($ str1 === $ str2) {echo "true"; } else {echo "false"; }

Ausgabeergebnis: Falsch

HINWEIS: Verwenden des Bedieners "===" werden $ str1 und $ str2 als unterschiedliche Typen angesehen, sodass das Betriebsergebnis falsch ist.

Szenarien der Funktion von Strcmp ()

Im Vergleich zu den Operatoren "==" und "===" ist die Funktion STRCMP () die bevorzugte Methode zum Vergleich von zwei Zeichenfolgen. Es wird häufig verwendet, um zu überprüfen, ob Zeichenfolgen gleich sind, beispielsweise in Formularvalidierung:

$ str1 = $ _post ['Passwort'];

$ str2 = "QWERTY";

if (strcmp ($ str1, $ str2) === 0) {// Passwort korrekt eingegeben} else {// Passwort ist falsch}

Dieser Code vergleicht das vom Benutzer eingegebene Kennwort mit dem vordefinierten Kennwort. Wenn sie gleich sind, ist das Passwort korrekt, sonst ist das Passwort falsch. Da die Funktion von STRCMP () genauer ist, wird sichergestellt, dass das Kennwort nicht falsch akzeptiert wird.

abschließend

STRCMP () ist eine sehr nützliche Zeichenfolgenfunktion in PHP, mit der verglichen wird, ob zwei Zeichenfolgen gleich sind. Während es möglicherweise einfacher sein kann, Operatoren zu verwenden "==" und "===" in einigen Fällen für String -Vergleiche, die unter Verwendung von STRCMP () die Genauigkeit der Vergleichsergebnisse sicherstellen.