Heim > Backend-Entwicklung > PHP-Problem > Welche Möglichkeiten gibt es, Zeichenfolgen in PHP auf Gleichheit zu vergleichen?

Welche Möglichkeiten gibt es, Zeichenfolgen in PHP auf Gleichheit zu vergleichen?

青灯夜游
Freigeben: 2023-03-14 17:28:01
Original
5124 Leute haben es durchsucht

Die Methoden für PHP zum Vergleichen, ob Zeichenfolgen gleich sind: 1. Verwenden Sie die Anweisung „String 1==String 2“. 2. Verwenden Sie die Anweisung „String 1=== String 2“. 4. Verwenden Sie die Anweisung „strcasecmp (String 1, String 2)“ und so weiter.

Welche Möglichkeiten gibt es, Zeichenfolgen in PHP auf Gleichheit zu vergleichen?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Vergleichen Sie zwei Zeichenfolgen, um festzustellen, ob sie gleich sind

Im Allgemeinen können Sie !=, = verwenden = um zwei Objekte zu vergleichen. Gleichheit bedeutet, dass es sich um zwei Objekte handelt, da es sich nicht unbedingt nur um Zeichenfolgen handelt, sondern auch um Ganzzahlen usw. Beispiel:

$a = "joe";
$b = "jerry";
if ($a != $b)
{
    echo "不相等";
}
else
{
    echo "相等";
}
Nach dem Login kopieren

Wenn Sie zum Vergleichen !==, === verwenden (Sie können ein zusätzliches Gleichheitszeichen sehen), müssen die Typen der beiden Objekte genau gleich sein, um „true“ zurückzugeben. Andernfalls verwenden Sie ==, != , die Zeichenfolge wird zum Vergleich automatisch in den entsprechenden Typ konvertiert.

22 == "22"; // 返回 true
22 === "22"; // 返回false
Nach dem Login kopieren

Aus diesem Grund kommt es in unserem Programm häufig zu unerwarteten „Unfällen“:

0 == "我爱你"; // 返回true
1 == "1 我爱你";// 返回true
Nach dem Login kopieren

php-Tutorial Es gibt auch eine Reihe von Funktionen für den String-Vergleich: strcmp, strcasecmp, strncasecmp(), strncmp(), Rückgabewertbeschreibung:

Welche Möglichkeiten gibt es, Zeichenfolgen in PHP auf Gleichheit zu vergleichen?

strcmp wird für den Zeichenfolgenvergleich unter Berücksichtigung der Groß- und Kleinschreibung verwendet:

echo strcmp("abcdd", "abcde"); // 返回 1 (>0), 比较的是 "b"和"b"
Nach dem Login kopieren

strcasecmp wird für den Zeichenfolgenvergleich ohne Berücksichtigung der Groß- und Kleinschreibung verwendet:

echo strcasecmp("abcdd", "abcde"); // 返回 -1 (<0), 比较的是"d"和"e"
Nach dem Login kopieren

strncmp Wird zum Vergleichen von a verwendet Teil einer Zeichenfolge, beginnend am Anfang der Zeichenfolge:

echo strncmp("abcdd", "abcde", 3); // 返回 1 (>0), 比较了 abc 和 abc
Nach dem Login kopieren

strncasecmp wird verwendet, um einen Teil der Zeichenfolge ohne Berücksichtigung der Groß- und Kleinschreibung zu vergleichen, beginnend mit dem Anfang der Zeichenfolge. Der dritte Parameter ist die zu vergleichende Länge:

echo strncasecmp("abcdd", "abcde", 3); // 返回 0, 比较了 abc 和 abc, 由于不区分大小写,所以两者是相同的。
Nach dem Login kopieren

Eine andere Situation besteht darin, dass ein einfacher Vergleich der Zeichenfolgengröße unsere vorgegebenen Anforderungen nicht erfüllen kann. Beispielsweise ist 10.gif wie üblich besser als 5.gif Groß, aber wenn Sie die oben genannten Funktionen anwenden, wird -1 zurückgegeben, was bedeutet 10.gif ist besser als 5.gif. Für diese Situation bietet PHP zwei natürlich kontrastierende Funktionen strnatcmp und strnatcasecmp:

echo strnatcmp("10.gif", "5.gif"); // 返回 1 (>0)
echo strnatcasecmp("10.gif", "5.gif"); // 返回 1 (>0)
Nach dem Login kopieren

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWelche Möglichkeiten gibt es, Zeichenfolgen in PHP auf Gleichheit zu vergleichen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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
Aktuelle Ausgaben
PHP-Datenerfassung?
Aus 1970-01-01 08:00:00
0
0
0
PHP-Erweiterung intl
Aus 1970-01-01 08:00:00
0
0
0
Wie man PHP gut lernt
Aus 1970-01-01 08:00:00
0
0
0
Mehrere PHP-Versionen
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage