首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏热爱IT

    strpos

    比如:strpos() 先了解一下strpos()函数是干啥的。 strpos — 查找字符串首次出现的位置 用法: int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] ) 看下面代码 : $a = 'abcd'; $b = 'b'; $c = 'a'; echo strpos($a,$b) ? '原来是兄弟
    ' : '非我族类,砍ta
    '; echo strpos($a,$c) ? 与strpos()有一点不同是,该函数的返回值是false或者字符串的一部分。如果单纯的判断两个字符串的包含关系,最好使用strpos,因为速度更快、耗费内存更少。

    88620发布于 2019-04-10
  • 来自专栏YashanDB知识库

    YashanDB STRPOS函数

    STRPOS语法图STRPOS函数在expr表示的字符串中从左向右查找另一个给定的字符串substring,返回字符串substring在字符串expr中第一次出现的位置,为一个INT类型的数字。 示例SELECT STRPOS('abcdef', 'abc') a,STRPOS('abcdef', 'def') b,STRPOS('广东深圳', '深圳') c,STRPOS(' ', ' ') d,STRPOS(NULL, NULL) eFROM DUAL; A B C D E-- ::= STRPOS "(" expr "," substring ")"STRPOS函数在expr表示的字符串中从左向右查找另一个给定的字符串substring,返回字符串substring在字符串expr 示例SELECT STRPOS('abcdef', 'abc') a,STRPOS('abcdef', 'def') b,STRPOS('广东深圳', '深圳') c,STRPOS(' ', '

    21710编辑于 2025-08-01
  • 来自专栏陶士涵的菜地

    strpos stripos strrpos strripos的区别

    stripos — 查找字符串首次出现的位置(不区分大小写),应使用 === 运算符来测试此函数的返回值 strpos 左边开始字符出现的第一个位置,区分大小写 stripos 和上面一样,不区分大小写 php $str="AaBbbBCc"; //区分大小写 var_dump(strpos($str,'b'));//int(3) //不区分大小写 var_dump(stripos($str,'b'))

    77220发布于 2019-09-10
  • 来自专栏沈唁志

    在PHP中strpos函数的正确使用方式

    首先简单介绍下 strpos 函数,strpos 函数是查找某个字符在字符串中的位置,这里需要明确这个函数的作用,这个函数得到的是位置。 如果存在,返回数字,否则返回的是 false。 而很多时候我们拿这个函数用来判断字符串中是否存在某个字符,一些同学使用的姿势是这样的 // 判断‘沈唁志博客’中是否存在‘博客’这个词 if (strpos('沈唁志博客', '博客')) { else{ // 如果不存在执行此处代码 echo '不存在'; } 这段代码输出的是’存在’;没什么问题;但是再看下面这段代码 // 判断‘沈唁志博客’中是否存在‘沈’这个字 if (strpos 的第二个参数必须是字符串型的,因此,如果你是在循环或者其他情况下调用的 strpos 函数,而且不确定第二个参数的类型 那么保险的方式是用strval把它转字符串类型了: // 判断‘沈唁志博客 1 原创文章采用CC BY-NC-SA 4.0协议进行许可,转载请注明:转载自:在PHP中strpos函数的正确使用方式

    8.8K30发布于 2018-05-24
  • 来自专栏技术博文

    php 使用函数中遇到的坑之----strpos

    strpos — 查找字符串首次出现的位置 mixed strpos ( string $haystack , mixed $needle [, int $offset = 0 ] ) <? php $mystring = 'abc'; $findme = 'a'; $pos = strpos($mystring, $findme); // 注意这里使用的是 ===。 php $mystring = 'abc'; $findme = 'a'; $pos = strpos($mystring, $findme); // 使用 !== 操作符。使用 !

    1.1K100发布于 2018-04-16
  • 来自专栏代码审计

    PHP代码审计04之strpos函数使用不当

    strpos($user, '<') || !strpos($user, '>')) && (!strpos($pass, '<') || ! php var_dump(strpos("abcd","a")); var_dump(strpos("abcd","y")); ?> ? strpos($user,'<')); var_dump(strpos($user,'>')); var_dump(!strpos($user,'>')); ? strpos($user, '<') || !strpos($user, '>')) && (!strpos($pass, '<') || !strpos($pass, '>'))); ? 小结 通过这篇文章的学习与讲解,是不是对strpos()函数和PHP弱类型绕过有了一定的了解了呢?

    2.4K20发布于 2020-11-04
  • 来自专栏Owen's World

    php7.3导入Excel strpos(): Non-string needles will be interpreted as strings in the

    修改该行代码 // $nullOffset = strpos($url, 0x00); $nullOffset = strpos($url, chr(0x00)); 复制代码

    44720编辑于 2021-12-08
  • 来自专栏写PHP的老王

    PHP strpos,strstr,strpbrk这几个函数有什么区别

    strpos,strstr,strpbrk这几个函数都可以实现。那么这几个函数有什么不同呢? strstr strstr — 查找字符串的首次出现,别名strchar ? strpos 查找字符串首次出现的位置。 ? 返回 needle 在 haystack 中首次出现的数字位置。查询从offset开始。offset不影响输出的数值。只用于跳过不查询的字符串。 官方文档的Note中: 如果你仅仅想确定 needle 是否存在于 haystack 中,请使用速度更快、耗费内存更少的 strpos() 函数。 以下是strpos 的源码 ? 在性能上,strpos 会比strstr好一点点。 可以看一下网上的测试效果,测试效果地址 strpbrk strpbrk — 在字符串中查找一组字符的任何一个字符。 strpos 返回的是完整匹配查询字符串的第一次出现位置。strpos('ABCGCAC','CA')返回结果是4。 strpbrk 返回的是字符列表中匹配的任意一个字符第一次出现之后的字符串。

    1.1K20发布于 2019-08-12
  • 来自专栏红日安全

    代码审计Day4 - strpos使用不当引发漏洞

    在进行登录操作之前,代码在 第8行 和 第9行 使用 strpos 函数来防止输入的参数含有 < 和 > 符号,猜测开发者应该是考虑到非法字符注入问题。 我们先来看一下 strpos 函数的定义: strpos — 查找字符串首次出现的位置 作用:主要是用来查找字符在字符串中首次出现的位置。 结构:int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] ) 在上面这个例子中,strpos 函数返回查找到的子字符串的下标 我们尝试使用以下 payload ,观察 strpos 函数的返回结果。 实例分析 实际上,本次漏洞是开发者对 strpos 函数理解不够,或者说是开发者考虑不周,导致过滤方法可被绕过。

    1.7K00发布于 2020-03-11
  • 来自专栏玄魂工作室

    看代码学渗透 Day4 - strpos使用不当引发漏洞

    在进行登录操作之前,代码在 第8行 和 第9行 使用 strpos 函数来防止输入的参数含有 < 和 > 符号,猜测开发者应该是考虑到非法字符注入问题。 我们先来看一下 strpos 函数的定义: strpos — 查找字符串首次出现的位置 作用:主要是用来查找字符在字符串中首次出现的位置。 在上面这个例子中,strpos 函数返回查找到的子字符串的下标。如果字符串开头就是我们要搜索的目标,则返回下标 0 ;如果搜索不到,则返回 false 。 实例分析 实际上,本次漏洞是开发者对 strpos 函数理解不够,或者说是开发者考虑不周,导致过滤方法可被绕过。 由于我们暂时没有在互联网上找到 strpos 使用不当导致漏洞的CMS案例,所以这里只能选取一个相似的漏洞进行分析,同样是开发者验证不够周全导致的漏洞。

    1.7K10发布于 2018-09-14
  • 来自专栏写PHP的老王

    如果让 strpos 查找一个整数类型的数字会发生什么?

    每次数据来了,想要查找这个字符串中某个字符,上来就是使用strposstrpos用于查找字符串中某个子串第一次出现的位置。 那么,如果不小心给strpos传入的是一个整数类型又会怎么样呢? 上面得到的是一个空字符串 查看php 源码中string.c的文件,找到strpos的代码。strpos对于非字符串类型的数据使用php_needle_char做了一次类型转换,强制类型转换。 ? true);返回内容为1 3、double类型数据,先强转为长整型再转换成char类型 4、对象则对对象id进行char的转换 5、其他类型触发E_WARNING的警告到这里就了解了为什么给一个整数,strpos strpos里的代码还是比较简单,读起来也不费劲。 ? 对offset参数进行验证,在这一步过滤越界的offset。同时对负数的offset进行处理,转换成正数,在下面的处理统一安正数处理 ?

    97720发布于 2019-08-12
  • 来自专栏林冠宏的技术文章

    介绍一个很爽的 php 字符串特定检索函数---strpos()

    函数: strpos("","") 参数1:待检索的字符串或字符串变量 参数2:要检测是否被含有的子字符串 成功,返回首个字符的起始位置 没有找到就返回false 看到这里,估计你会有点疑问,博文标题明明写着 “php 字符串特定检索函数---strpos()”,但是却返回位置的。

    1.3K70发布于 2018-01-02
  • PHP获取手机型号与系统型号

    ==false || strpos($user_agent, "GT-")!==false || strpos($user_agent, "SCH-")! ==false || strpos($user_agent, "MI 1S")!==false || strpos($user_agent, "MI 2")! ==false || strpos($user_agent, "MI 3")!==false || strpos($user_agent, "MI 4")! ==false || strpos($user_agent, "8190Q")!==false || strpos($user_agent, "5910")! ==false || strpos($user_agent, "X9007")!==false || strpos($user_agent, "X907")!

    26200编辑于 2025-07-14
  • 来自专栏私人订制

    php判断访问者是否手机客户端实例

    方法一:判断HTTP_USER_AGENT $agent = strtolower($_SERVER['HTTP_USER_AGENT']); if(strpos($agent,"netfront" ) || strpos($agent,"iphone") || strpos($agent,"midp-2.0") || strpos($agent,"opera mini") || strpos($agent ,"ucweb") || strpos($agent,"android") || strpos($agent,"windows ce") || strpos($agent,"symbianos")) { ==FALSE) &&(strpos($_SERVER['HTTP_ACCEPT'],'text/html')===FALSE || (strpos($_SERVER['HTTP_ACCEPT'],'vnd.wap.wml == false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT

    2.5K20编辑于 2023-05-10
  • 来自专栏Inkedus

    PHP爬取墨迹天气

    主要函数   首先介绍一下今天主要的函数: file_get_contents -> 获取网站html strpos -> 搜索字符并输出该字符出现的第一个位置 substr -> 截取字符串 实现    ($html,"info_uptime")+13; $htmll = substr($html,$uptime); $endup = strpos($htmll,"<"); echo $uptimes = substr($htmll,0,$endup); echo "\r\n"; echo "\r\n"; $num = strpos($html,"description") + 22; $htmlx = substr($html,$num); $c= strpos($htmlx,">"); $htmlx = substr($htmlx,0,$c-1); echo $htmlx; //一句话 echo "\r\n"; echo "\r\n目前天气:"; $tianqistart = strpos($htmlx,"度")+4; $tianqiend = strpos($htmlx,","); $tianqix

    2.3K10发布于 2020-04-16
  • 来自专栏R专栏

    PHP判断用户是否是移动端访问的办法

    == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Android') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Silk/') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Kindle') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'BlackBerry') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mini') !

    3K20发布于 2020-04-21
  • 来自专栏wordpress建站吧

    简单好用的PHP判断页面访问是移动端还是PC端?

    == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Android') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Silk/') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Kindle') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'BlackBerry') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mini') !

    2.7K10编辑于 2022-03-15
  • 来自专栏软件开发讲解

    数字藏品系统开发代码呈现(3D建模平台),NFT数字藏品系统开发源码呈现交付

    == strpos($string, 'select')) { if (false ! == strpos($string, '__CFG_THEMESTYLE__') || false ! == strpos($string, '_CFG_THEMESTYLE_')) { $tmp = get_file_folder_List('. == strpos($string, '__CFG_MOBILE_THEMESTYLE__') || false ! == strpos($string, '__ONLINE_CFG_STYLE__') || false !

    54620编辑于 2022-07-26
  • 来自专栏WordPress果酱

    WordPress 技巧:在 WordPress 中如何判断移动设备访问

    etc.) || strpos($_SERVER['HTTP_USER_AGENT'], 'Android') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Silk/') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Kindle') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'BlackBerry') ! == false || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mini') !

    2.5K20编辑于 2023-04-15
  • 来自专栏木头编程 - moTzxx

    PHP 获取用户行为参考代码 [IP/OS/URL/Broswer]

    = "Maxthon 2.0"; } elseif (strpos($user_OSagent, "Maxthon")) { $visitor_browser = "Maxthon"; } elseif (strpos($user_OSagent, "Edge")) { $visitor_browser = "Edge" ; } elseif (strpos($user_OSagent, "Trident")) { $visitor_browser = "IE"; } elseif (strpos($user_OSagent, "MSIE")) { $visitor_browser = "IE"; } elseif (strpos , "NetCaptor")) { $visitor_browser = "NetCaptor"; } elseif (strpos($user_OSagent,

    1K20发布于 2018-09-11
领券