您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關php中如何比對字符串是否相等的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
php比較字符串是否相等的方法有:1、使用“字符串1==字符串2”語句;2、使用“字符串1===字符串2”語句;3、使用“strcmp(字符串1,字符串2)”語句;4、使用“strcasecmp(字符串1,字符串2)”語句等等。
本教程操作環境:windows7系統、PHP7.1版、DELL G3電腦
比較兩個字符串是否相等
一般能用 !=、== 比較兩個對象是否相等,只所以說是兩個對象,是因為他們不一定全部為字符串,也能為整型等等。比如
$a = "joe"; $b = "jerry"; if ($a != $b) { echo "不相等"; } else { echo "相等"; }
如果用 !==、===(能看到多了一個等號)比較的話,兩個對象的類型要嚴格相等才能返回true;否則用==、!=則會將字符串自動轉換成相應的類型,以便進行比較.
22 == "22"; // 返回 true 22 === "22"; // 返回false
正因為這樣,所以我們的程式時常會發生一些想不到的“意外”:
0 == "我愛你"; // 返回true 1 == "1 我愛你";// 返回true
php教程里 更有這樣一組用于字符串比較的函數:strcmp、strcasecmp、strncasecmp()、 strncmp(),返回值說明:
strcmp是用于區分大小寫(即大小寫敏感)的字符串比較:
echo strcmp("abcdd", "abcde"); // 返回 1 (>0), 比較的是 "b"和"b"
strcasecmp用于不區分大小寫的字符串比較:
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中如何比對字符串是否相等”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。