來自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;
}
}