在大家编写PHP程序的时候,经常要处理字符串,最基本就是字符串的查找,在PHP检测字符串中是否包含指定字符串可以使用正则,当然如果你对正则并不了解,那么有以下几个函数可以为您提供方便。
1. strstr函数
strstr() 函数搜索一个字符串在另一个字符串中的第一次出现,该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。
代码如下:
$email = 'user@';
$domain = strstr($email, '@');
echo $domain; // @
2. stristr函数
stristr() 函数查找字符串在另一个字符串中第一次出现的位置。
如果成功,则返回字符串的其余部分(从匹配点)。如果没有找到该字符串,则返回 false。
它和strstr的使用方法完全一样.唯一的区别是stristr不区分大小写。
3. strpos函数
strpos函数返回布尔值,false 和 true 不用多说,用 “===”进行判断。
strpos在执行速度上都比以上两个函数快,另外strpos有一个参数指定判断的位置,但是默认为空,意思是判断整个字符串,缺点是对中文的支持不好。
代码如下:
if(strpos('','jb51') !== false) {
echo '包含jb51';
} else {
echo '不包含jb51';
}
代码如下:
// 返回第一次找到改字符串的位置,这里返回为1,若查不到则返回False
$str= 'abc';
$needle= 'a';
$pos = strpos($str, $needle);
4. explode函数
代码如下:
function checkstr($str) {
//判断是否包含a这个字符
$needle ='a';
$tmparray = explode($needle,$str);
if(count($tmparray) > 1) {
return true;
} else {
return false;
}
}
5. substr函数
判断最后一个字符是不是指定字符
代码如下:
$str1="<p>这是一段PHP代码,这段代码使用了substr函数</p>";
if(substr($str1,-6) == "函数</p>") {
echo substr($str1,0,-4);
}
6. substr_count函数
统计 “子字符串” 在 “原始字符串” 中出现的次数。
代码如下:
$big_string = "这是一段字符串,这个字符串里包含很多的字";
$small_string = "字符";
$number = substr_count($big_string, $small_string);
但是在大多情况下,并不需要返回次数,而是true或fasle,便有了以下代码:
function check_str($str, $substr)
{
$nums=substr_count($str,$substr);
if ($nums>=1)
{
return true;
} else {
return false;
}
}