php查询字符串
① php 获取字符串某字符的位置!
有以下几种方法:
stripos() 返回字符串在另一字符串中第一次出现的位置(大小写不敏感)
stristr() 查找字符串在另一字符串中第一次出现的位置(大小写不敏感)
strpos() 返回字符串在另一字符串中首次出现的位置(对大小写敏感)
strrchr() 查找字符串在另一个字符串中最后一次出现的位置。
strripos() 查找字符串在另一字符串中最后出现的位置(对大小写不敏感)
strrpos() 查找字符串在另一字符串中最后出现的位置(对大小写敏感)
(1)php查询字符串扩展阅读:
PHP常用函数:
strtoupper()函数把字符串转换为大写
strtolower()函数把字符串转换为小写
strtok()函数把字符串分割为更小的字符串
strstr()函数搜索一个字符串在另一个字符串中的第一次出现
strspn()函数返回在字符串中包含的特定字符的数目
strrpos()函数查找字符串在另一个字符串中最后一次出现的位置
strripos()函数查找字符串在另一个字符串中最后一次出现的位置
② php 查询字符串内是否含有某个字符
strstr
(PHP 4, PHP 5, PHP 7)
strstr — 查找字符串的首次出现
说明
string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] )
返回 haystack 字符串从 needle 第一次出现的位置开始到 haystack 结尾的字符串。
Note:
该函数区分大小写。如果想要不区分大小写,请使用 stristr()。
Note:
如果你仅仅想确定 needle 是否存在于 haystack 中,请使用速度更快、耗费内存更少的 strpos() 函数。
参数
haystack
输入字符串。
needle
如果 needle 不是一个字符串,那么它将被转化为整型并且作为字符的序号来使用。
before_needle
若为 TRUE,strstr() 将返回 needle 在 haystack 中的位置之前的部分。
返回值
返回字符串的一部分或者 FALSE(如果未发现 needle)。
③ php查找字符串是否存在
strstr — 查找字符串的首次出现
手册示例:
$email = '[email protected]';$domain = strstr($email, '@');
如果区分大小写用stristr
④ PHP 查找中文字符串
在PHP中查找中文字符,有两种方案:
将PHP保存为与欲查找中文一样的编码,然后使用strpos查找。
将PHP保存为UTF-8无BOM编码,然后转换字符串编码为UTF-8,再用strpos查找。
第一种方法:
strpos($curl_res,'中文');
第二种方法:
$str=mb_convert_encoding($str,'utf-8','gbk');
mb_strpos($str,'中文');
主意:函数中的中文字符串参数的编码,必须要和PHP文件保存格式的编码一致。
⑤ 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;
}
}
⑥ php如何模糊查询字符串 - 技术问答
唉,自己搞定了。function checkstr($str){ $needle = \"a\";//判断是否包含a这个字符 $tmparray = explode($needle,$str); if(count($tmparray)>1){ return true; } else{ return false; } } 到技术吧网站查看回答详情>>
⑦ php 如何用strstr 查找多个字符 比如$aa="1234567@0" 里查找1或2或@
strstr — 查找字符串的首次出现
string strstr
( string $haystack
, mixed $needle
[, bool $before_needle = false
] )
返回 haystack 字符串从 needle 第一次出现的位置开始到 haystack 结尾的字符串。
$needle只能是字符(串)或者数字.不然会提醒:needle is not a string or an integer
如果一定要用strstr查询字符串 $aa中是否包含1或者2或者@ 可以下面这样:
$aa="1234567@0";
$search=array(1,2,'@');
functiontest($str,$array_search){
foreach($array_searchas$value){
if(strstr($str,$value)!==false){
returntrue;
}
}
returnfalse;
}
//使用方法
$test=test($aa,$search);//true
如果你仅仅想确定 needle 是否存在于 haystack 中,请使用速度更快、耗费内存更少的 strpos() 函数。
建议使用正则表达式简单些如:
$aa="1234567@0";
$search='/[12@]/';
if(preg_match($search,$aa)){
//包含1或者2或者@
}else{
//不包含
}
参考PHP手册网址:
http://php.net/manual/zh/function.strstr.php
⑧ PHP—strpos查找字符串
strpos——查找字符串第一次出现的位置
strpos(string $haystack, mixed $needle, int $offset = 0):int
返回needle在haystack中首次出现的数字位置
offset(7.1.0开始支持负数的 offset。)
如果提供了此参数,搜索会从字符串该字符数的起始位置开始统计。 如果是负数,搜索会从字符串结尾指定字符数开始 。
返回值:
返回 needle 存在于 haystack 字符串起始的位置(独立于 offset)。同时 注意字符串位置是从0开始,而不是从1开始的 。
如果没找到 needle,将返回 false。
注意:
⑨ PHP 中 我想在一个字符串中从右向左查找指定的字符怎么做
有两种方法:
1.使用字符串查找函数:
strrpos(字符串,字符);
2.使用正则表达式:
preg_match('/字符$/',字符串);
注意:方法2中,正则表达式是一种规则语法,当要查找的字符包含规则语法中的特殊字符时,需要进行转义处理。