1. php如何判斷一個字元串是否包含另一個字元串
php如何判斷一個字元串是否包含另一個字元串
我覺得最簡單的就是:
strpos($a,
$b)
!==
false
如果$a
中存在
$b,則為
true
,否則為
false。
用
!==
false
(或者
===
false)
的原因是如果
$b
正好位於$a的開始部分,那麼該函數會返回int(0),那麼0是false,但$b確實位於$a中,所以要用
!==
判斷一下類型,要確保是嚴格的
false。
其它的還有
PHP
原生支持的函數,如
strstr(),stristr()
等,直接判斷就可以了。
2. php 判斷一個字元串里是否有某個字元
PHP中如何判斷一個字元串中是否有某個字元,如下:
PHP語言是一個功能強大的嵌入式HTML腳本語言,它的易用性讓許多程序員選擇使用。PHP判斷字元串的包含,可以使用PHP的內置函數strstr,strpos,stristr直接進行判斷.也可以通過explode函數的作用寫一個判斷函數。
1. strstr: 返回一個從被判斷字元開始到結束的字元串,如果沒有返回值,則不包含
代碼如下:
< ?php
/*如手冊上的舉例*/
$email = '[email protected]';
$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;
}
}
3. php檢測字元串中是否有某個字元
stristr
(PHP 4, PHP 5, PHP 7)
stristr — strstr() 函數的忽略大小寫版本
說明
mixed stristr
( string $haystack
, mixed $needle
[, bool $before_needle = false
] )
返回 haystack 字元串從 needle 第一次出現的位置開始到結尾的字元串。
網頁鏈接
4. strpos和strstr兩個函數的區別
兩個函數 都是 查找 「字元串的首次出現位置」
string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] )
函數 區分大小寫 如果想要不區分大小寫,請使用 stristr()。
int strpos ( string $haystack , mixed $needle [, int $offset =
0 ] )
返回 needle 在 haystack 中首次出現的數字位置。與 strrpos() 不同,在 PHP 5
之前,該函數可以使用一個完整字元串作為 needle,並且整個字元串都將被使用。
建議 下載個 php手冊 解說更詳細