溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

如何在PHP中使用strcmp()與strcasecmp()對(duì)字符串進(jìn)行比較

發(fā)布時(shí)間:2020-12-30 14:55:27 來(lái)源:億速云 閱讀:133 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

本篇文章給大家分享的是有關(guān)如何在PHP中使用strcmp()與strcasecmp()對(duì)字符串進(jìn)行比較,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

使用“===”來(lái)判斷,至于它和“==”的區(qū)別,簡(jiǎn)單來(lái)說(shuō)就是前者強(qiáng)調(diào)“identical(相同的,完全相同)”類(lèi)型也要求一樣;后者要求“equal(相等)”,值相同就可以了。或者使用strcmp來(lái)判斷,但是這個(gè)能夠告訴你兩個(gè)字符串是否相等,但是無(wú)法告訴你在哪里不同。

一般能用 !=, == 比較兩個(gè)對(duì)象是否相等,之所以說(shuō)是兩個(gè)對(duì)象,是因?yàn)樗麄儾灰欢ㄈ繛樽址?,也能為整型等等?strong>比如

復(fù)制代碼 代碼如下:


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


如果用  !== , === 比較的話,兩個(gè)對(duì)象的類(lèi)型要嚴(yán)格相等才能返回true;否則用==,!=則會(huì)將字符串自動(dòng)轉(zhuǎn)換成相應(yīng)的類(lèi)型,以便進(jìn)行比較.

復(fù)制代碼 代碼如下:


22 == "22"; // 返回 true
22 === "22"; // 返回falsePHP 用于字符串比較的函數(shù):strcmp(),strcasecmp(),strncasecmp(), strncmp(),他們都是 如果前者比后者大,則返回大于0 的整數(shù);如果前者比后者小,則返回小于0 的整數(shù);如果兩者相等,則返回0.

1)strcmp是用于 區(qū)分大小寫(xiě) (即大小寫(xiě)敏感)的字符串比較:
2)echo strcmp("abcdd", "abcde"); // 返回 1 (>0), 比較的是 "b"和"b"
3)strcasecmp用于不區(qū)分大小寫(xiě)的字符串比較:
4)echo strcasecmp("abcdd", "abcde"); // 返回 -1 (<0), 比較的是"d"和"e"
strncmp用于比較字符串的一部分,從字符串的開(kāi)頭開(kāi)始比較,第三個(gè)參數(shù),為要比較的長(zhǎng)度:
echo strncmp("abcdd", "abcde", 3); // 返回 1 (>0), 比較了 abc 和 abc
strncasecmp用于不區(qū)分大小寫(xiě)的比較字符串的一部分,從字符串的開(kāi)頭開(kāi)始比較,第三個(gè)參數(shù),為要比較的長(zhǎng)度:
echo strncasecmp("abcdd", "abcde", 3); // 返回 0, 比較了 abc 和 abc, 由于不區(qū)分大小寫(xiě),所以?xún)烧呤窍嗤摹?br/>更有一種情況是單單比較字符串大小,達(dá)不到我們預(yù)定的需求,比如照常理 10.gif 會(huì)比 5.gif 大,但如果應(yīng)用上面幾個(gè)函數(shù),就會(huì)返回 -1,即表示 10.gif比5.gif,針對(duì)這種情況,php提供了兩個(gè)自然對(duì)比的函數(shù)strnatcmp,strnatcasecmp:
echo strnatcmp("10.gif", "5.gif"); // 返回 1 (>0)
echo strnatcasecmp("10.gif", "5.gif"); // 返回 1 (>0)

以上就是如何在PHP中使用strcmp()與strcasecmp()對(duì)字符串進(jìn)行比較,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI