php如何判斷一個字符串是否包含另一個字符串


來自1:http://blog.sina.com.cn/s/blog_8edc37a801016yha.html

--------------------------------------------------------------------

我覺得最簡單的就是:(用這種最好,StrPos效率最高)

strpos($a, $b) !== false 如果$a 中存在 $b,則為 true ,否則為 false。

用 !== false (或者 === false) 的原因是如果 $b 正好位於$a的開始部分,那么該函數會返回int(0),那么0是false,但$b確實位於$a中,所以要用 !== 判斷一下類型,要確保是嚴格的 false。

其它的還有 PHP 原生支持的函數,如 strstr(),stristr() 等,直接判斷就可以了。

 

來自2:http://www.cnblogs.com/martin1009/archive/2012/12/26/2833831.html

------------------------------------------------------------------------------------------------

PHP語言是一個功能強大的嵌入式HTML腳本語言,它的易用性讓許多程序員選擇使用。PHP判斷字符串的包含,可以使用PHP的內置函數strstr,strpos,stristr直接進行判斷.也可以通過explode函數的作用寫一個判斷函數。

1. strstr: 返回一個從被判斷字符開始到結束的字符串,如果沒有返回值,則不包含

代碼如下:

< ?php   

/*如手冊上的舉例*/   

$email = 'user@example.com';   

$domain = strstr($email, '@');   

echo $domain; 
// prints @example.com   

?> 

2. stristr: 它和strstr的使用方法完全一樣.唯一的區別是stristr不區分大小寫.

3. strpos: 返回boolean值.FALSE和TRUE不用多說.用 “===”進行判斷.strpos在執行速度上都比以上兩個函數快,另外strpos有一個參數指定判斷的位置,但是默認為空.意思是判斷整個字符串.缺點是對中文的支持不好. 

PHP判斷字符串的包含代碼如下:

$str= 'abc';   

$needle= 'a';   

$pos = strpos($str, $needle);  

4. 用explode進行判斷 

PHP判斷字符串的包含代碼如下:

function checkstr($str){   

  $needle = "a";//判斷是否包含a這個字符   

  $tmparray = explode($needle,$str);   

  if(count($tmparray)>1){   

      return true;   

   } else{   

     return false;   

  }   


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM