PHP 查找字符串常用函数介绍


Posted in PHP onJune 07, 2012

一、strstr — 查找字符串的首次出现

string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] )
注1:$haystack是当事字符串,$needle是被查找的字符串。该函数区分大小写。
注2:返回值是从needle开始到最后。
注3:关于$needle,如果不是字符串,被当作整形来作为字符的序号来使用。
注4:before_needle若为true,则返回前东西。

<?php 
$email = 'yuxiaoxiao@example.com'; 
$domain = strstr($email, '@'); 
echo $domain; // 打印 @example.com 
$user = strstr($email, '@', true); // 从 PHP 5.3.0 起 
echo $user; // 打印 yuxiaoxiao 
?>

二、stristr strstr不区分大小写的版本
三、strpos -查找字符串首次出现的位置

int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )
注1:可选的 offset 参数可以用来指定从 haystack 中的哪一个字符开始查找。返回的数字位置是相对于 haystack 的起始位置而言的。
四、substr -返回字符串的子串

string substr ( string $string , int $start [, int $length ] )
$rest = substr("abcdef", -1); // 返回 "f"

注1:如果 start 是非负数,返回的字符串将从 string 的 start 位置开始,从 0 开始计算。例如,在字符串 “abcdef” 中,在位置 0 的字符是 “a”,位置 2 的字符串是 “c” 等等。

注2:如果 start 是负数,返回的字符串将从 string 结尾处向前数第 start 个字符开始。

注3:如果 string 的长度小于或等于 start,将返回 FALSE。

length

注4:如果提供了正数的 length,返回的字符串将从 start 处开始最多包括 length 个字符(取决于 string 的长度)。

注5:如果提供了负数的 length,那么 string 末尾处的许多字符将会被漏掉(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回一个空字符串。

注6:如果提供了值为 0,FALSE 或 NULL 的 length,那么将返回一个空字符串。

注7:如果没有提供 length,返回的子字符串将从 start 位置开始直到字符串结尾。

<?php 
$rest = substr("abcdef", 0, -1); // 返回 "abcde" 
$rest = substr("abcdef", 2, -1); // 返回 "cde" 
$rest = substr("abcdef", 4, -4); // 返回 "" 
$rest = substr("abcdef", -3, -1); // 返回 "de" 
?>

五、strrchr -查找指定字符在字符串中的最后一次出现

string strrchr ( string $haystack , mixed $needle )

该函数返回 haystack 字符串中的一部分,这部分以 needle 的最后出现位置开始,直到 haystack 末尾。

六、strripos -计算指定字符串在目标字符串中最后一次出现的位置(不区分大小写)
七、stripos -查找字符串首次出现的位置(不区分大小定)
八、strrpos -计算指定字符串在目标字符串中最后一次出现的位置

PHP 相关文章推荐
php 小乘法表实现代码
Jul 16 PHP
php imagecreatetruecolor 创建高清和透明图片代码小结
May 15 PHP
php后台如何避免用户直接进入方法实例
Oct 15 PHP
PHP_NETWORK_GETADDRESSES: GETADDRINFO FAILED问题解决办法
May 04 PHP
php实现webservice实例
Nov 06 PHP
php两种无限分类方法实例
Apr 21 PHP
标准版Eclipse搭建PHP环境的详细步骤
Nov 18 PHP
[原创]CI(CodeIgniter)简单统计访问人数实现方法
Jan 19 PHP
PHP的swoole扩展安装方法详细教程
May 18 PHP
Yii2中设置与获取别名的函数(setAlias和getAlias)用法分析
Jul 25 PHP
PHP代码重构方法漫谈
Apr 17 PHP
如何在PHP环境中使用ProtoBuf数据格式
Jun 19 PHP
php中通过curl smtp发送邮件
Jun 05 #PHP
Smarty的配置与高级缓存技术分享
Jun 05 #PHP
PHP Parse Error: syntax error, unexpected $end 错误的解决办法
Jun 05 #PHP
php中json_decode()和json_encode()的使用方法
Jun 04 #PHP
php安全之直接用$获取值而不$_GET 字符转义
Jun 03 #PHP
PHP版网站缓存加快打开速度的方法分享
Jun 03 #PHP
PHP仿盗链代码
Jun 03 #PHP
You might like
实测在class的function中include的文件中非php的global全局环境
2013/07/15 PHP
php的慢速日志引起的Mysql错误问题分析
2014/05/13 PHP
ThinkPHP项目分组配置方法分析
2016/03/23 PHP
JavaScript和JQuery实用代码片段(一)
2010/04/07 Javascript
js获取当前路径的简单示例代码
2014/01/08 Javascript
Javascript实现快速排序(Quicksort)的算法详解
2015/09/06 Javascript
js通过keyCode值判断单击键盘上某个键,然后触发指定的事件方法
2017/02/19 Javascript
JavaScript ES6箭头函数使用指南
2018/12/30 Javascript
解决Layui数据表格显示无数据提示的问题
2019/11/14 Javascript
在Chrome DevTools中调试JavaScript的实现
2020/04/07 Javascript
javascript 使用sleep函数的常见方法详解
2020/04/26 Javascript
小程序实现列表倒计时功能
2021/01/29 Javascript
python避免死锁方法实例分析
2015/06/04 Python
解决Python中字符串和数字拼接报错的方法
2016/10/23 Python
Python实现获取本地及远程图片大小的方法示例
2018/07/21 Python
解决Pycharm 包已经下载,但是运行代码提示找不到模块的问题
2019/08/31 Python
在Python中使用turtle绘制多个同心圆示例
2019/11/23 Python
python字典和json.dumps()的遇到的坑分析
2020/03/11 Python
基于python爬取有道翻译过程图解
2020/03/31 Python
python函数map()和partial()的知识点总结
2020/05/26 Python
英国男士时尚网站:Dandy Fellow
2018/02/09 全球购物
什么是数组名
2012/05/10 面试题
学期自我鉴定范文
2013/10/01 职场文书
统计学专业毕业生的自我评价分享
2013/11/28 职场文书
人身损害赔偿协议书范本
2014/09/27 职场文书
2015年元旦联欢晚会活动总结
2014/11/28 职场文书
会议邀请函
2015/01/30 职场文书
安全生产先进个人总结
2015/02/15 职场文书
幼儿教师师德师风自我评价
2015/03/05 职场文书
学校世界艾滋病日宣传活动总结
2015/05/05 职场文书
撤诉书怎么写
2015/05/19 职场文书
正规借条模板
2015/05/26 职场文书
2016年万圣节活动个人总结
2016/04/05 职场文书
如何利用Python实现n*n螺旋矩阵
2022/01/18 Python
关于mysql中string和number的转换问题
2022/06/14 MySQL
Windows Server 修改远程桌面端口的实现
2022/06/25 Servers