您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何在PHP中使用strcmp()與strcasecmp()對字符串進行比較,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
使用“===”來判斷,至于它和“==”的區別,簡單來說就是前者強調“identical(相同的,完全相同)”類型也要求一樣;后者要求“equal(相等)”,值相同就可以了。或者使用strcmp來判斷,但是這個能夠告訴你兩個字符串是否相等,但是無法告訴你在哪里不同。
一般能用 !=, == 比較兩個對象是否相等,之所以說是兩個對象,是因為他們不一定全部為字符串,也能為整型等等。比如
復制代碼 代碼如下:
$a = "joe";
$b = "jerry";
if ($a != $b)
{
echo "不相等";
}
else
{
echo "相等";
}
如果用 !== , === 比較的話,兩個對象的類型要嚴格相等才能返回true;否則用==,!=則會將字符串自動轉換成相應的類型,以便進行比較.
復制代碼 代碼如下:
22 == "22"; // 返回 true
22 === "22"; // 返回falsePHP 用于字符串比較的函數:strcmp(),strcasecmp(),strncasecmp(), strncmp(),他們都是 如果前者比后者大,則返回大于0 的整數;如果前者比后者小,則返回小于0 的整數;如果兩者相等,則返回0.
1)strcmp是用于 區分大小寫 (即大小寫敏感)的字符串比較:
2)echo strcmp("abcdd", "abcde"); // 返回 1 (>0), 比較的是 "b"和"b"
3)strcasecmp用于不區分大小寫的字符串比較:
4)echo strcasecmp("abcdd", "abcde"); // 返回 -1 (<0), 比較的是"d"和"e"
strncmp用于比較字符串的一部分,從字符串的開頭開始比較,第三個參數,為要比較的長度:
echo strncmp("abcdd", "abcde", 3); // 返回 1 (>0), 比較了 abc 和 abc
strncasecmp用于不區分大小寫的比較字符串的一部分,從字符串的開頭開始比較,第三個參數,為要比較的長度:
echo strncasecmp("abcdd", "abcde", 3); // 返回 0, 比較了 abc 和 abc, 由于不區分大小寫,所以兩者是相同的。
更有一種情況是單單比較字符串大小,達不到我們預定的需求,比如照常理 10.gif 會比 5.gif 大,但如果應用上面幾個函數,就會返回 -1,即表示 10.gif比5.gif,針對這種情況,php提供了兩個自然對比的函數strnatcmp,strnatcasecmp:
echo strnatcmp("10.gif", "5.gif"); // 返回 1 (>0)
echo strnatcasecmp("10.gif", "5.gif"); // 返回 1 (>0)
以上就是如何在PHP中使用strcmp()與strcasecmp()對字符串進行比較,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。