溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

利用php怎么判斷字符串中是否包含指定字符串

發(fā)布時(shí)間:2020-12-09 15:50:07 來(lái)源:億速云 閱讀:357 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

利用php怎么判斷字符串中是否包含指定字符串?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

1. strstr

strstr() 函數(shù)搜索一個(gè)字符串在另一個(gè)字符串中的第一次出現(xiàn)。
該函數(shù)返回字符串的其余部分(從匹配點(diǎn))。如果未找到所搜索的字符串,則返回 false。

代碼如下:

<&#63;php
 /*如手冊(cè)上的舉例*/
 $email = 'user@example.com';
 $domain = strstr($email, '@');
 echo $domain;
 // prints @example.com
&#63;>

2. stristr

stristr() 函數(shù)查找字符串在另一個(gè)字符串中第一次出現(xiàn)的位置。
如果成功,則返回字符串的其余部分(從匹配點(diǎn))。如果沒(méi)有找到該字符串,則返回 false。

它和strstr的使用方法完全一樣.唯一的區(qū)別是stristr不區(qū)分大小寫(xiě).

3. strpos

strpos函數(shù)返回boolean值.FALSE和TRUE不用多說(shuō).用 “===”進(jìn)行判斷.strpos在執(zhí)行速度上都比以上兩個(gè)函數(shù)快,另外strpos有一個(gè)參數(shù)指定判斷的位置,但是默認(rèn)為空.意思是判斷整個(gè)字符串.缺點(diǎn)是對(duì)中文的支持不好.

實(shí)例1

if(strpos('www.jb51.net','jb51') !== false){ 
 echo '包含jb51'; 
}else{
 echo '不包含jb51'; 
}

實(shí)例2

$str= 'abc';
$needle= 'a';
$pos = strpos($str, $needle); // 返回第一次找到改字符串的位置,這里返回為1,若查不到則返回False

4. explode

用explode進(jìn)行判斷PHP判斷字符串的包含代碼如下:

function checkstr($str){
 $needle ='a';//判斷是否包含a這個(gè)字符
 $tmparray = explode($needle,$str);
 if(count($tmparray)>1){
 return true;
 } else{
 return false;
 }
}

5、substr例如我們需要判斷最后一個(gè)字符是不是制定字符

<&#63;php
/*
$str1="<p>這是個(gè)winrar專用的dll然后下哦啊不錯(cuò)的dll文件,QlogWin32.dll</p>";
if(substr($str1,-8)==".dll</p>"){
echo substr($str1,0,-4);
}

6、substr_count統(tǒng)計(jì)“子字符串”在“原始字符串中出現(xiàn)的次數(shù)”

substr_count()函數(shù)本是一個(gè)小字符串在一個(gè)大字符串中出現(xiàn)的次數(shù):
$number = substr_count(big_string, small_string);
正好今天需要一個(gè)查找字符串的函數(shù),要實(shí)現(xiàn)判斷字符串big_string是否包含字符串small_string,返回true或fasle;

查了半天手冊(cè)沒(méi)有找到現(xiàn)成的函數(shù),于是想到可以用substr_count函數(shù)來(lái)實(shí)現(xiàn)代碼如下:

function check_str($str, $substr)
{
 $nums=substr_count($str,$substr);
 if ($nums>=1)
 {
  return true;
 }
 else
 {
  return false;
 }
}

關(guān)于利用php怎么判斷字符串中是否包含指定字符串問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI