Heim >Backend-Entwicklung >PHP-Tutorial >PHP-String-Vergleich: „==', „===' oder „strcmp()' – Welchen Operator sollten Sie verwenden?

PHP-String-Vergleich: „==', „===' oder „strcmp()' – Welchen Operator sollten Sie verwenden?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-01 13:42:09520Durchsuche

PHP String Comparison: `==`, `===`, or `strcmp()` – Which Operator Should You Use?

String-Vergleich in PHP: '==', '===' oder 'strcmp()'?

String-Vergleich in PHP kann mit verschiedenen Operatoren wie „==“, „===“ oder der Funktion „strcmp()“ ausgeführt werden. Bei diesem Vergleich wird überprüft, ob zwei Zeichenfolgen gleich sind oder nicht.

'==' vs. '==='

Der Operator '==' prüft auf Gleichheit nur und berücksichtigt nicht den Typ der Operanden. Dies bedeutet, dass „0“ im „==“-Vergleich als gleich „falsch“ betrachtet wird. Andererseits prüft der Operator „===“ sowohl auf Gleichheit als auch auf Identität, was bedeutet, dass die Operanden denselben Wert und Typ haben müssen. Somit ist '0' im '==='-Vergleich nicht gleich 'false'.

'strcmp()'-Funktion

Die 'strcmp()' Funktion vergleicht zwei Zeichenfolgen lexikografisch. Es gibt einen negativen Wert zurück, wenn die erste Zeichenfolge kleiner als die zweite Zeichenfolge ist, einen positiven Wert, wenn die erste Zeichenfolge größer als die zweite Zeichenfolge ist, und 0, wenn sie gleich sind.

Wann ist ' zu verwenden? strcmp()'?

Während '===' in den meisten Fällen für den String-Vergleich ausreichend ist, ist 'strcmp()' bei Bedarf nützlich um:

  • Bestimmen Sie die Reihenfolge von Zeichenfolgen (ob str1 kleiner, gleich oder größer als str2 ist)
  • Führen Sie Zeichenfolgenvergleiche ohne Berücksichtigung der Groß- und Kleinschreibung durch (mithilfe von 'strcasecmp() ' Funktion)

Im bereitgestellten Code Snippet:

if ($password === $password2) { ... }

Dieser Vergleich mit „===“ gibt nur dann „true“ zurück, wenn die Passwörter die gleiche Groß-/Kleinschreibung und den gleichen Wert haben. Wenn Sie einen Kennwortvergleich ohne Berücksichtigung der Groß- und Kleinschreibung zulassen möchten, müssen Sie „strcmp()“ oder „strcasecmp()“ verwenden.

Das obige ist der detaillierte Inhalt vonPHP-String-Vergleich: „==', „===' oder „strcmp()' – Welchen Operator sollten Sie verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn