1. 程式人生 > >php中處理字符串的常見函數

php中處理字符串的常見函數

字符串的查找 func xpl keyword 包含 不用 但是 padding lsp

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

1. strstr

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

代碼如下:

1 2 3 4 5 6 7 <?php /*如手冊上的舉例*/ $email = [email protected]; $domain = strstr($email, ‘@‘); echo $domain;
// prints @example.com ?>

2. stristr

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

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

3. strpos

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

實例1

1 2 3 4 5 if(strpos(‘www.jb51.net‘,‘jb51‘) !== false){ echo ‘包含jb51‘; }else{ echo ‘不包含jb51‘; }

實例2

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

4. explode

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

1 2 3 4 5 6 7 8 9 function checkstr($str){ $needle =‘a‘;//判斷是否包含a這個字符 $tmparray = explode($needle,$str); if(count($tmparray)>1){ return true; } else{ return false; } }

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

1 2 3 4 5 6 <?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函數來實現代碼如下:

1 2 3 4 5 6 7 8 9 10 11 12 function check_str($str, $substr) { $nums=substr_count($str,$substr); if ($nums>=1) { return true; } else { return false; } }

php中處理字符串的常見函數