<p>Im vorherigen Artikel haben wir die Methode zum Zusammenfügen zweier Zeichenfolgen kennengelernt. Wenn Sie sie benötigen, lesen Sie bitte „<a href="https://www.php.cn/php-weizijiaocheng-480731.html" target="_blank">Lernen Sie, wie Sie PHP-Operatoren verwenden, um zwei Zeichenfolgen miteinander zu verbinden</a>“. Heute lernen wir, wie man zwei Saiten vergleicht, lasst uns gemeinsam lernen! </p>
<p>String-Vergleich ist eine gängige Operation bei der String-Verarbeitung. Es gibt viele Möglichkeiten, zwei Strings in PHP zu vergleichen. In diesem Artikel werden drei gängige Vergleichsmethoden anhand von Codebeispielen vorgestellt: </p>
<ul style="list-style-type: disc;">
<li><p>Verwenden Sie Vergleichsoperatoren: <code>==<span style="font-family:Microsoft Yahei, Hiragino Sans GB, Helvetica, Helvetica Neue, 微软雅é»', Tahoma, Arial, sans-serif">/ </span></code><code>===</code>, <code>></code>, <code> usw.<code>==<span style="font-family:Microsoft Yahei, Hiragino Sans GB, Helvetica, Helvetica Neue, 微软雅黑, Tahoma, Arial, sans-serif">/</span></code><code>===</code>、<code>></code>、<code>等</code></code></p></li>
<li><p>内置函数strcmp()</p></li>
<li><p>内置函数strcasecmp()</p></li>
</ul>
<p><strong>1、使用比较运算符</strong></p>
<p>我们可以用<code>==</code>(双等号)或者 <code>===</code>(三等号)来比较字符串是否相等。<br></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?php
header("Content-type:text/html;charset=utf-8");
$str1="Hello world!";
$str2="Hello world!";
if($str1==$str2){
echo "两个字符串相等<br>";
}else{
echo "两个字符串不相等<br>";
}
if($str1===$str2){
echo "两个字符串相等<br>";
}else{
echo "两个字符串不相等<br>";
}
?></pre><div class="contentsignin">Nach dem Login kopieren</div></div><p>输出结果:<br/></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">两个字符串相等
两个字符串相等</pre><div class="contentsignin">Nach dem Login kopieren</div></div><blockquote><p><strong><code>==</code>和<code>===</code>的区别:</strong>==不比较类型,三等号===,它不转换类型;</p><p>使用等式(==)运算符进行比较时,如果两个值相同(它只比较变量的值,而不是数据类型),则返回true值;如果两个值不相同,则返回false值。</p><p>使用恒等式(===)运算符进行比较时,会查看两个变量(表达式或常量)是否值相等且具有相同的数据类型,即两者都是字符串或两者都是整数等等。如果两个变量包含相同的值和相同的数据类型,则此运算符返回true,否则返回false。</p></blockquote><p>我们可以用<code><</code>(小于)或者 <code>></code></li></p><p>Eingebaute Funktion strcmp( )</p></li> <p></p>Eingebaute Funktion strcasecmp()<table></li></ul><tbody><strong>1 Verwendung von Vergleichsoperatoren</strong><tr class="firstRow"><th style="word-break: break-all;">Wir können <code>==</code> (doppeltes Gleichheitszeichen) verwenden. oder <code>===</code> (dreifaches Gleichheitszeichen), um zu vergleichen, ob Zeichenfolgen gleich sind. <br/></th><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?php
header("Content-type:text/html;charset=utf-8");
$str1="12";
$str2="13";
if($str1>$str2){
echo "'$str1' 比 '$str2' 大<br>";
}else{
echo "'$str1' 比 '$str2' 小<br>";
}
$str1="15";
$str2="13";
if($str1<$str2){
echo "'$str1' 比 '$str2' 小<br>";
}else{
echo "'$str1' 比 '$str2' 大<br>";
}
?></pre><div class="contentsignin">Nach dem Login kopieren</div></div><th>Ausgabeergebnis:<br/></th><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">'12' 比 '13' 小
'15' 比 '13' 大</pre><div class="contentsignin">Nach dem Login kopieren</div></div><blockquote><th><strong>Der Unterschied zwischen <code>==</code> und <code>===</code>:</strong > == vergleicht keine Typen, das dreifache Gleichheitszeichen === konvertiert keine Typen. </th></tr> Wenn beim Vergleich mit dem Gleichheitsoperator (==) zwei Werte gleich sind (es vergleicht nur die Wert der Variablen, nicht der Datentyp), wird ein wahrer Wert zurückgegeben; wenn die beiden Werte nicht gleich sind, wird ein falscher Wert zurückgegeben. <tr><td>Beim Vergleich mit dem Identitätsoperator (===) wird geprüft, ob zwei Variablen (Ausdrücke oder Konstanten) gleiche Werte und denselben Datentyp haben, d. h. beide sind Zeichenfolgen oder beide sind Ganzzahlen usw. Warten Sie . Dieser Operator gibt „true“ zurück, wenn zwei Variablen denselben Wert und denselben Datentyp enthalten, andernfalls gibt er „false“ zurück. </td></blockquote><td>Wir können <code><</code> (kleiner als) oder <code>></code> (größer als) verwenden, um die Größe von Zeichenfolgen zu vergleichen. </td><div class="code" style="position:relative; padding:0px; margin:0px;"><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><div class="contentsignin">Nach dem Login kopieren</div></div><td> Ausgabeergebnis: </td><div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?php
$str1="PHP中文网";
$str2="php中文网";
echo strcmp($str1,$str2)."<br>";
?></pre><div class="contentsignin">Nach dem Login kopieren</div></div><div class="contentsignin">Nach dem Login kopieren</div></div></tr> Liste der PHP-Vergleichsoperatoren: <tr><td></td><td></td>Vergleichsoperator <td></td>Name</tr><tr>Beschreibung<td></td><td></td>$a ==. $b<td></td>gleich</tr><tr>if $a nach der Typkonvertierung Wenn die Wenn der Wert von $a und $b gleich ist, wird TRUE zurückgegeben, andernfalls wird FALSE zurückgegeben. aber auch die Typen ihrer Werte sind gleich, dann geben Sie TRUE zurück, andernfalls geben Sie FALSE zurück<td></td><td></td>$a != $b<td></td> ist nicht gleich</tr><tr>Wenn der Wert von $a nicht gleich dem Wert ist von $b nach der Typkonvertierung TRUE zurückgeben, andernfalls FALSE zurückgeben. $a <> $b<td></td> ist dasselbe wie != Der Wert von $b nach der Typkonvertierung gibt TRUE zurück, andernfalls wird FALSE zurückgegeben<td></td><td></td>$a !== $b </tr><tr>Nicht kongruent<td></td>Wenn der Wert von $a nicht gleich dem Wert von $b ist, oder die Typen ihrer Werte sind unterschiedlich, dann wird TRUE zurückgegeben, andernfalls wird FALSE zurückgegeben. dann wird TRUE zurückgegeben, andernfalls wird FALSE zurückgegeben <td></td><td>$a <= $b</td></tr>kleiner oder gleich <tr><td>Wenn der Wert von $a kleiner oder gleich dem Wert von $b ist, wird TRUE zurückgegeben , andernfalls wird FALSE zurückgegeben </td><td></td><td>$a <=> $b</td></tr>Raumschiffoperator (Kombinationsvergleichsoperator)<tr><td>wenn $a kleiner, gleich oder größer als $b ist, ein ganzzahliger Wert kleiner als, gleich, bzw. größer als 0 zurückgegeben. PHP7 beginnt mit der Bereitstellung.</td><td></td><td>$a ?? $b ?? $c </td></tr>NULL-Merge-Operator<tr><td>Der erste Operand, der von links nach rechts existiert und nicht NULL ist. Wenn keines von beiden definiert ist und nicht NULL ist, wird NULL zurückgegeben. Verfügbar ab PHP7. </td><td></td><td><p>除了可以使用比较运算符来比较字符串外,还可以使用函数来比较字符串。PHP 中提供了两个函数来实现字符串比较功能,分别是 strcmp() 和 strcasecmp() 函数,我们来看看。</p><p><strong>2、使用内置函数strcmp()--以区分大小写的方式比较两个字符串</strong></p><p><code>strcmp(string1,string2)</code>比较两个字符串时,如果:</p><ul style="list-style-type: disc;"><li><p>如果两个字符串相等,则会返回<code>0</code>;</p></li><li><p>如果string1 小于 string2,则会返回<code>< 0</code> 的值;</p></li><li><p>如果string1 大于 string2,则会返回<code>> 0</code> 的值;</p></li></ul><p>我们先来看下面一个例子:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><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><div class="contentsignin">Nach dem Login kopieren</div></div><p>输出:<br/></p><p><img src="https://img.php.cn/upload/image/890/419/489/162797046690039PHP-String-Lernen: Vergleich zweier Strings" title="162797046690039PHP-String-Lernen: Vergleich zweier Strings" alt="PHP-String-Lernen: Vergleich zweier Strings"/></p><p>strcmp()函数在比较字符串时,是区分大小写的。</p><div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?php
$str1="PHP中文网";
$str2="php中文网";
echo strcmp($str1,$str2)."<br>";
?></pre><div class="contentsignin">Nach dem Login kopieren</div></div><div class="contentsignin">Nach dem Login kopieren</div></div><p>输出结果:<br/></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">-1</pre><div class="contentsignin">Nach dem Login kopieren</div></div><p>借助这个特性,我们可以将其运用在网站注册账号时的确认用户密码功能中(密码通常是区分大小写的),比较两次输入的密码是否一致。<br/></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?php
header("Content-type:text/html;charset=utf-8");
$pwd1 = 'php124@qq';
$pwd2 = 'php124@QQ';
if(strcmp($pwd1, $pwd2) != 0){
echo '密码不匹配!';
} else {
echo '密码匹配!';
}
?></pre><div class="contentsignin">Nach dem Login kopieren</div></div><p>只有两个字符串完全匹配,strcmp()函数才会认为相等的;而在上面示例中,$pwd1 和 $pwd2的大小写不同,因此两个字符串不相等。</p><p>但有时,我们只需要比较字符串的值,不想区分大小写,例如比较网站的网址,那要怎么处理?简单,可以使用strcasecmp()函数。</p><p><strong>3、使用内置函数strcasecmp()--以不区分大小写的方式比较两个字符串</strong></p><p>strcasecmp()函数和strcmp()函数类似,都可比较字符串,返回值也相同,区别只是strcasecmp()函数不区分大小写。</p><p>下面我们来看看下面一个例子:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?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 '两个网址不同';
}
?></pre><div class="contentsignin">Nach dem Login kopieren</div></div><p>输出结果:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">两个网址相同</pre><div class="contentsignin">Nach dem Login kopieren</div></div><p>好了就说到这里了,有其他想知道的,可以点击这个哦。→ →<a href="https://www.php.cn/course/list/29.html" target="_blank">php视频教程</a></p>
<p> 最后给大家推荐阅读一个经典课程《<a href="https://www.php.cn/course/1105.html" target="_blank">PHP字符串处理(玉女心经版)</a>》,免费的~快来学习啊!</p>
Das obige ist der detaillierte Inhalt vonPHP-String-Lernen: Vergleich zweier Strings. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!