strpos 查找字符串首次出现的位置 php函数分享

strpos

(PHP 4, PHP 5)

strpos — 查找字符串首次出现的位置

说明

int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )

返回 needlehaystack 中首次出现的数字位置。与 strrpos() 不同,在 PHP 5 之前,该函数可以使用一个完整字符串作为 needle,并且整个字符串都将被使用。

参数 haystack

在该字符串中进行查找。

needle

如果 needle 不是一个字符串,那么它将被转换为整型并被视为字符的顺序值。

offset

可选的 offset 参数可以用来指定从 haystack 中的哪一个字符开始查找。返回的数字位置是相对于 haystack 的起始位置而言的。

返回值

以整型返回位置信息。如果没找到 needle,strpos() 将返回布尔型的 FALSE 值。

Warning

此函数可能返回布尔值 FALSE,但也可能返回等同于 FALSE 的非布尔值,例如 0 或 ""(空串)。请阅读 布尔类型章节以获取更多信息。应使用 === 运算符 来测试此函数的返回值。

范例

Example #1 使用 ===

<?php$mystring=\'abc\';$findme=\'a\';$pos=strpos($mystring,$findme);

//注意这里使用的是===。简单的==不能像我们期待的那样工作,//因为\'a\'是第0位置上的(第一个)字符。if($pos===false){echo\"Thestring\'$findme\'wasnotfoundinthestring\'$mystring\'\";}else{echo\"Thestring\'$findme\'wasfoundinthestring\'$mystring\'\";echo\"andexistsatposition$pos\";}?>

Example #2 使用 !==

<?php$mystring=\'abc\';$findme=\'a\';$pos=strpos($mystring,$findme);

//使用!==操作符。使用!=不能像我们期待的那样工作,//因为\'a\'的位置是0。语句(0!=false)的结果是false。if($pos!==false){echo\"Thestring\'$findme\'wasfoundinthestring\'$mystring\'\";echo\"andexistsatposition$pos\";}else{echo\"Thestring\'$findme\'wasnotfoundinthestring\'$mystring\'\";}?>

Example #3 使用位置偏移量

<?php//忽视位置偏移量之前的字符进行查找$newstring=\'abcdefabcdef\';$pos=strpos($newstring,\'a\',1);//$pos=7,不是0?>

注释

Note: 此函数可安全用于二进制对象。

参见strrpos() – 计算指定字符串在目标字符串中最后一次出现的位置stripos() – 查找字符串首次出现的位置(不区分大小写)strripos() – 计算指定字符串在目标字符串中最后一次出现的位置(不区分大小写)strrchr() – 查找指定字符在字符串中的最后一次出现substr() – 返回字符串的子串stristr() – strstr 函数的忽略大小写版本strstr() – 查找字符串的首次出现

—-想了解更多的php相关异常处理怎么解决关注

本站无法对海量内容真伪性鉴别,请勿相信本站任何号码,邮件,站外网址等信息,如有需要,请自行甄别。版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至net@163.com举报,一经查实,本站将立刻删除。
(0)
上一篇 2022年8月13日 上午9:56
下一篇 2022年8月13日 上午10:08

相关推荐

发表回复

登录后才能评论