PHP说明文档:
语法: int strpos(string haystack, string needle, int [offset]);
返回值: 整数
函数种类: 资料处理
内容说明
本函数用来寻找字符串 haystack 中的字符 needle 最先出现的位置。值得注意的是 needle 只能是一个字符,中文字等就不适合了。若找不到指定的字符,则返回 false 值。参数 offset 可省略,用来Y表示从 offset 开始找。
strpos() 函数返回字符串在另一个字符串中第一次出现的位置。如果没有找到该字符串,则返回 false。
语法:
strpos(string,find,start)
参数:
string: 必需。规定被搜索的字符串。
find: 必需。规定被搜索的字符串。
start: 可选。规定开始搜索的位置。
举例:
<?php
echo strpos("Hello world!","wo");
?>
输出:6
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有一个参数指定判断的位置,但是默认为空.意思是判断整个字符串.缺点是对中文的支持不好.使用方法
$str= 'abc';
$needle= 'a';
$pos = strpos($str, $needle);
4. 用explode进行判断
functioncheckstr($str){
$needle = "a";//判断是否包含a这个字符
$tmparray = explode($needle,$str);
if(count($tmparray)>1){
returntrue;
}else{
returnfalse;
}
}
|