Heim >Backend-Entwicklung >PHP-Problem >So führen Sie einen Vergleich von Zeichenfolgen ohne Berücksichtigung der Groß- und Kleinschreibung in PHP durch

So führen Sie einen Vergleich von Zeichenfolgen ohne Berücksichtigung der Groß- und Kleinschreibung in PHP durch

青灯夜游
青灯夜游Original
2021-07-19 11:09:522106Durchsuche

Methode: 1. Verwenden Sie die Anweisung „strcasecmp(string1,string2)“; 2. Verwenden Sie die Anweisung „strncasecmp(string1,string2,length)“;

So führen Sie einen Vergleich von Zeichenfolgen ohne Berücksichtigung der Groß- und Kleinschreibung in PHP durch

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

Methode 1: Funktion strcasecmp() verwenden

Die Funktion strcasecmp() unterscheidet beim Vergleich von Zeichenfolgen nicht zwischen Groß- und Kleinschreibung , das Syntaxformat ist wie folgt:

strcasecmp(string $str1, string $str2)

wobei $str1 und $str2 die beiden zu vergleichenden Zeichenfolgen sind.

Laut Vergleichsergebnis ist der Rückgabewert 67ecdc53f8d2bfdc1190c6c1301c9667 0; wenn $ Wenn str1 gleich $str2 ist, wird 0 zurückgegeben. 6e4be76181e598d2603919dfec27c664 0;如果 $str1 于 $str2 相等,则返回 0

网站的网址都是不区分大小写的,因此我们可以使用 strcasecmp() 函数来比较两个网址是否相同,示例代码如下:

<?php
header("Content-type:text/html;charset=utf-8");
$url1 = &#39;https://www.php.cn/&#39;;
$url2 = &#39;HTTPS://www.php.cn/&#39;;
if(strcasecmp($url1, $url2) == 0){
    echo &#39;两个网址相同&#39;;
} else {
    echo &#39;两个网址不同&#39;;
}
?>

输出:

两个网址相同

方法2:使用strncasecmp()函数

strncasecmp() 函数比较两个字符串(不区分大小写)。

语法

strncasecmp(string1,string2,length)
参数 描述
string1 必需。规定要比较的第一个字符串。
string2 必需。规定要比较的第二个字符串。
length 必需。规定每个字符串用于比较的字符数。

返回值: 该函数返回:

  • 0 - 如果两个字符串相等

  • 0a40da42a3acce42e0d00ba15d47bfdc0 - 如果 string1 大于 string2

示例:

<?php
echo strncasecmp("Hello","Hello",6);
echo "<br>";
echo strncasecmp("Hello","hELLo",6);
?>

输出:

0
0

方法3:使用strnatcasecmp()函数

strnatcasecmp() 函数使用一种"自然"算法来比较两个字符串(不区分大小写)。

在自然算法中,数字 2 小于数字 10。在计算机排序中,10 小于 2,这是因为 10 中的第一个数字小于 2。

语法

strnatcasecmp(string1,string2)
参数 描述
string1 必需。规定要比较的第一个字符串。
string2 必需。规定要比较的第二个字符串。

返回值: 

  • 0 - 如果两个字符串相等

  • 0a40da42a3acce42e0d00ba15d47bfdc0

    Bei Website-URLs wird die Groß-/Kleinschreibung nicht beachtet, daher können wir die Funktion strcasecmp() verwenden, um zu vergleichen, ob zwei URLs gleich sind. Der Beispielcode lautet wie folgt:
  • <?php
    echo strnatcasecmp("2Hello world!","10Hello WORLD!");
    echo "<br>";
    echo strnatcasecmp("10Hello world!","2Hello WORLD!");
    ?>
Methode 2: Verwenden Sie strncasecmp ()-Funktion

strncasecmp()-Funktion vergleicht zwei Zeichenfolgen (ohne Berücksichtigung der Groß- und Kleinschreibung).

Syntax

-1
1

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.
Rückgabewert: Diese Funktion gibt zurück:

Das obige ist der detaillierte Inhalt vonSo führen Sie einen Vergleich von Zeichenfolgen ohne Berücksichtigung der Groß- und Kleinschreibung in PHP durch. 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