首頁 >後端開發 >php教程 >查詢php字串中包含指定數據

查詢php字串中包含指定數據

php中世界最好的语言
php中世界最好的语言原創
2018-05-16 16:08:333068瀏覽

這次帶給大家查詢php字串中包含指定數據,查詢php字串中包含指定數據的注意事項有哪些,下面就是實戰案例,一起來看一下。

編寫程式的時候,經常要處理字串,最基本就是字串的查找,在php偵測字串中是否包含指定字串可以使用正則,如果你對正則不了解,那麼有幾個函數可以為您提供方便。

1. strstr

strstr() 函數搜尋一個字串在另一個字串中的第一次出現。
該函數傳回字串的其餘部分(從匹配點)。如果未找到所搜尋的字串,則傳回 false。

程式碼如下:

<?php
 /*如手册上的举例*/
 $email = &#39;user@example.com&#39;;
 $domain = strstr($email, &#39;@&#39;);
 echo $domain;
 // prints @example.com
?>

2. stristr

#stristr() 函數尋找字串在另一個字串中第一次出現的位置。
如果成功,則傳回字串的其餘部分(從匹配點)。如果沒有找到該字串,則傳回 false。

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

3. strpos

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

實例1

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

實例2

$str= &#39;abc&#39;;
$needle= &#39;a&#39;;
$pos = strpos($str, $needle); // 返回第一次找到改字符串的位置,这里返回为1,若查不到则返回False

4. explode

用explode進行判斷PHP判斷字串的包含程式碼如下:

function checkstr($str){
 $needle =&#39;a&#39;;//判断是否包含a这个字符
 $tmparray = explode($needle,$str);
 if(count($tmparray)>1){
  return true;
 } else{
  return false;
 }
}

5、substr例如我們需要判斷最後一個字元是不是製定字元

<?php
/*
$str1="<p>这是个winrar专用的dll然后下哦啊不错的dll文件,QlogWin32.dll</p>";
if(substr($str1,-8)==".dll</p>"){
echo substr($str1,0,-4);
}

#6、substr_count統計「子字串」在「原字串中出現的次數」

substr_count()函數本來就是一個小字串在一個大字串中出現的次數:
$number = substr_count(big_string, small_string);
剛好今天需要一個尋找字串的函數,要實作判斷字串big_string是否包含字串small_string,傳回true或fasle;

查了半天手冊沒有找到現成的函數,於是想到可以用substr_count函數來實現程式碼如下:

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

超級簡單!

具體的大家可以找相關函數,進行進階應用。

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

PHP實作負載平衡下的session共用案例列詳解(附程式碼)

CodeIgniter使用redis步驟詳解

以上是查詢php字串中包含指定數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn