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手册 解说更详细