PHP-Funktionen zum Vergleichen von Zeichenfolgen: 1. strcasecmp(), Vergleich von zwei Zeichenfolgen ohne Berücksichtigung der Groß- und Kleinschreibung; 3. strcoll(), basierend auf lokalem Set zum Vergleichen von zwei Zeichenfolgen 4. strnatcasecmp(), das die Groß-/Kleinschreibung nicht berücksichtigt und einen „natürlichen Sortieralgorithmus“ verwendet, um zwei Zeichenfolgen zu vergleichen; Saiten.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, DELL G3-Computer
php verfügt über eine Vielzahl integrierter String-Vergleichsfunktionen
Funktion | Beschreibung |
---|---|
strcasecmp( ) | Vergleicht zwei Zeichenfolgen (ohne Berücksichtigung der Groß- und Kleinschreibung). |
strcmp() | Vergleicht zwei Zeichenfolgen (Groß-/Kleinschreibung beachten). |
strcoll() | Vergleicht zwei Zeichenfolgen (gemäß den lokalen Einstellungen). |
strnatcasecmp() | Verwendet einen „natürlichen Sortier“-Algorithmus, um zwei Zeichenfolgen zu vergleichen (Groß- und Kleinschreibung wird nicht berücksichtigt). |
strnatcmp() | Verwendet einen „natürlichen Sortier“-Algorithmus, um zwei Zeichenfolgen zu vergleichen (Groß-/Kleinschreibung beachten). |
strncasecmp() | String-Vergleich der ersten n Zeichen (ohne Berücksichtigung der Groß- und Kleinschreibung). |
strncmp() | String-Vergleich der ersten n Zeichen (Groß-/Kleinschreibung beachten). |
substr_compare() | Vergleicht zwei Zeichenfolgen beginnend an einer angegebenen Startposition (binärsicher und optional unter Berücksichtigung der Groß-/Kleinschreibung). | ?? Vergleich zweier Zeichenfolgen, wenn:
<li>
Wenn string1 größer als string2 ist, wird der Wert von > > wird zurückgegeben > Wert; <p><strong></strong> Schauen wir uns zunächst das folgende Beispiel an: </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?php
$str1="12";
$str2="12";
echo strcmp($str1,$str2)."<br>";
$str1="12";
$str2="13";
echo strcmp($str1,$str2)."<br>";
$str1="15";
$str2="13";
echo strcmp($str1,$str2)."<br>";
?></pre><div class="contentsignin">Nach dem Login kopieren</div></div><p>Ausgabe: <code>strcmp(string1,string2)
比较两个字符串时,如果:如果两个字符串相等,则会返回0
;
如果string1 小于 string2,则会返回< 0
的值;
如果string1 大于 string2,则会返回> 0
<?php $str1="PHP中文网"; $str2="php中文网"; echo strcmp($str1,$str2)."<br>"; ?>
-1
<?php header("Content-type:text/html;charset=utf-8"); $pwd1 = 'php124@qq'; $pwd2 = 'php124@QQ'; if(strcmp($pwd1, $pwd2) != 0){ echo '密码不匹配!'; } else { echo '密码匹配!'; } ?>
Aber manchmal müssen wir nur die Werte von Zeichenfolgen vergleichen und möchten nicht auf Groß- und Kleinschreibung achten, wie zum Beispiel beim Vergleich von Website-URLs. Wie gehen wir also damit um? Ganz einfach: Sie können die Funktion strcasecmp() verwenden.
<?php header("Content-type:text/html;charset=utf-8"); $url1="https://www.php.cn/"; $url2="HTTPS://WWW.PHP.CN/"; if(strcasecmp($url1, $url2) == 0){ echo '两个网址相同'; } else { echo '两个网址不同'; } ?>
两个网址相同
3. strncasecmp()-Funktion – Groß-/Kleinschreibung wird nicht berücksichtigt
strncasecmp()-Funktion vergleicht zwei Zeichenfolgen (ohne Berücksichtigung der Groß-/Kleinschreibung). Die Syntax lautet wie folgt:strncasecmp(string1,string2,length)
Parameter
Beschreibung
string1 | Erforderlich. Gibt die erste zu vergleichende Zeichenfolge an. | |||||||
---|---|---|---|---|---|---|---|---|
string2 | Erforderlich. Gibt die zweite zu vergleichende Zeichenfolge an. | |||||||
Länge | Erforderlich. Gibt die Anzahl der Zeichen pro Zeichenfolge an, die zum Vergleich verwendet werden. | |||||||
返回值:
0 - 如果两个字符串相等 <li><0 - 如果 string1 小于 string2 <li>>0 - 如果 string1 大于 string2 示例: <?php echo strncasecmp("Hello world!","hello earth!",6); ?> Nach dem Login kopieren 输出: 0 Nach dem Login kopieren 4、strnatcasecmp()函数--大小写不敏感 strnatcasecmp() 函数使用一种"自然"算法来比较两个字符串(不区分大小写)。 在自然算法中,数字 2 小于数字 10。在计算机排序中,10 小于 2,这是因为 10 中的第一个数字小于 2。 语法: strnatcasecmp(string1,string2) Nach dem Login kopieren 返回值:
0 - 如果两个字符串相等 <li><0 - 如果 string1 小于 string2 <li>>0 - 如果 string1 大于 string2 示例: <?php echo strnatcasecmp("2Hello world!","10Hello WORLD!"); echo "<br>"; echo strnatcasecmp("10Hello world!","2Hello WORLD!"); ?> Nach dem Login kopieren 输出: -1 1 Nach dem Login kopieren 5、strncmp()函数--大小写敏感 strncmp() 函数比较两个字符串(区分大小写)。 该函数与 strcmp() 函数类似,不同的是,strcmp() 没有 length 参数(不能指定每个字符串用于比较的字符数)。 strncmp(string1,string2,length) Nach dem Login kopieren
返回值和strcmp() 函数一样 <?php header("Content-type:text/html;charset=utf-8"); $pwd1 = 'password'; $pwd2 = 'Password'; if(strncmp($pwd1, $pwd2,8) != 0){ echo '密码不匹配!'; } else { echo '密码匹配!'; } ?> Nach dem Login kopieren 推荐学习:《PHP视频教程》 Das obige ist der detaillierte Inhalt vonWas ist die Funktion zum Vergleichen von Zeichenfolgen in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Vorheriger Artikel:Detaillierte Erläuterung der acht Entwurfsmuster von PHP
Nächster Artikel:So konvertieren Sie einen Hexadezimalwert in PHP in einen String
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
Neueste Artikel des Autors
Aktuelle Ausgaben
Bei der Verwendung von opentbs zum Generieren von ODT-Dateien sind Probleme aufgetreten: Werte desselben Schlüssels werden in derselben Zeile statt in separaten Spalten angezeigt.
Ich verwende eine Bibliothek namens OpenTbs, um ODT mit PHP zu erstellen. Ich verwende sie...
Aus 2024-04-06 20:18:18
0
1
483
verwandte Themen
Mehr>
|