上一篇文章中我們了解了拼接兩個字串的方法,有需要的請看《教你使用PHP運算子將兩個字串拼接在一起》。今天我們來了解下比較兩個字串的方法,一起來學習吧! 字串比較是字串處理中常見的一種操作,PHP中比較兩個字串有很多方法,這篇文章透過程式碼實例來給大家介紹三種常見的比較方法: 使用比較運算子:==/#===、>、等 內建函數strcmp() 內建函數strcasecmp() 1、使用比較運算子 我們可以用==(雙等號)或===#(三等號)來比較字串是否相等。 "; }else{ echo "两个字符串不相等"; } if($str1===$str2){ echo "两个字符串相等"; }else{ echo "两个字符串不相等"; } ?>輸出結果:两个字符串相等 两个字符串相等 #==和===的差異: ==不比較類型,三等號===,它不轉換類型; 使用等式(==)運算子進行比較時,如果兩個值相同(它只比較變數的值,而不是資料類型),則傳回true值;如果兩個值不相同,則傳回false值。 使用恆等式(===)運算子進行比較時,會查看兩個變數(表達式或常數)是否值相等且具有相同的資料類型,即兩者都是字串或兩者都是整數等等。如果兩個變數包含相同的值和相同的資料類型,則此運算子傳回true,否則傳回false。 我們可以用(小於)或 >(大於)來比較字串的大小。 $str2){ echo "'$str1' 比 '$str2' 大"; }else{ echo "'$str1' 比 '$str2' 小"; } $str1="15"; $str2="13"; if($str1<$str2){ echo "'$str1' 比 '$str2' 小"; }else{ echo "'$str1' 比 '$str2' 大"; } ?>輸出結果:'12' 比 '13' 小 '15' 比 '13' 大PHP比較運算子清單: 比較運算子 名稱 描述 $a == $b 等於 如果型別轉換後$a 和$b 的值相等,則傳回TRUE,否則傳回FALSE $a === $b 全等 如果$a 和$b 不只值相等,而且它們值的型別也相等,則回傳TRUE,否則回傳FALSE $a != $b 不等於 如果型別轉換後$a 的值不等於$b 的值,則返回TRUE,否則返回FALSE $a $b 不等於 與! = 相同,如果型別轉換後$a 的值不等於$b 的值,則傳回TRUE,否則傳回FALSE $a !== $b##不全等如果$a 的值不等於$b的值,或它們值的型別不同,則傳回TRUE,否則傳回FALSE $a 小與如果$a 的值小於$b 的值,則傳回TRUE,否則傳回FALSE ##$a > $b 大於 如果$a 的值大於$b 的值,則傳回TRUE,否則傳回FALSE $a 小於等於 如果$a 的值小於或等於$b 的值,則傳回TRUE,否則傳回FALSE $a >= $ b 大於等於 如果$a 的值大於或等於$b 的值,則傳回TRUE,否則傳回FALSE ##$a $b 太空船運算子(組合比較子)當$a小於、等於、大於$b時分別傳回一個小於、等於、大於0的整數值。 PHP7開始提供. $a ?? $b ?? $c NULL合併運算子從左到右第一個存在且不為NULL 的操作數。如果都沒有定義且不為 NULL,則傳回 NULL。 PHP7開始提供。 除了可以使用比较运算符来比较字符串外,还可以使用函数来比较字符串。PHP 中提供了两个函数来实现字符串比较功能,分别是 strcmp() 和 strcasecmp() 函数,我们来看看。 2、使用内置函数strcmp()--以区分大小写的方式比较两个字符串 strcmp(string1,string2)比较两个字符串时,如果: 如果两个字符串相等,则会返回0; 如果string1 小于 string2,则会返回 的值; 如果string1 大于 string2,则会返回> 0 的值; 我们先来看下面一个例子:"; $str1="12"; $str2="13"; echo strcmp($str1,$str2).""; $str1="15"; $str2="13"; echo strcmp($str1,$str2).""; ?>输出: strcmp()函数在比较字符串时,是区分大小写的。"; ?>输出结果:-1借助这个特性,我们可以将其运用在网站注册账号时的确认用户密码功能中(密码通常是区分大小写的),比较两次输入的密码是否一致。只有两个字符串完全匹配,strcmp()函数才会认为相等的;而在上面示例中,$pwd1 和 $pwd2的大小写不同,因此两个字符串不相等。 但有时,我们只需要比较字符串的值,不想区分大小写,例如比较网站的网址,那要怎么处理?简单,可以使用strcasecmp()函数。 3、使用内置函数strcasecmp()--以不区分大小写的方式比较两个字符串 strcasecmp()函数和strcmp()函数类似,都可比较字符串,返回值也相同,区别只是strcasecmp()函数不区分大小写。 下面我们来看看下面一个例子:输出结果:两个网址相同好了就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程 最后给大家推荐阅读一个经典课程《PHP字符串处理(玉女心经版)》,免费的~快来学习啊!