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 相关文章推荐
使用sockets:从新闻组中获取文章(一)
Oct 09 PHP
PHP中,文件上传
Dec 06 PHP
为IP查询添加GOOGLE地图功能的代码
Aug 08 PHP
基于PHP CURL获取邮箱地址的详解
Jun 03 PHP
PHP脚本监控Nginx 502错误并自动重启php-fpm
May 13 PHP
PHP实现的简单网络硬盘
Jul 29 PHP
php猜单词游戏
Sep 29 PHP
HTML中嵌入PHP的简单方法
Feb 16 PHP
Zend Framework前端控制器用法示例
Dec 11 PHP
php封装的验证码类分享
Feb 26 PHP
laravel 5.4 + vue + vux + element的环境搭配过程介绍
Apr 26 PHP
详解PHP服务器如何在有限的资源里最大提升并发能力
May 25 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
PHP输出时间差函数代码
2013/01/28 PHP
php教程之phpize使用方法
2014/02/12 PHP
php导出csv文件,可导出前导0实例代码
2016/11/16 PHP
laravel框架实现去掉URL中index.php的方法
2019/10/12 PHP
拖动一个HTML元素
2006/12/22 Javascript
JavaScript的9个陷阱及评点分析
2008/05/16 Javascript
javascript跑马灯悬停放大效果实现代码
2012/12/12 Javascript
解决window.opener=null;window.close(),只支持IE6不支持IE7,IE8的问题
2014/01/14 Javascript
JS实现跟随鼠标立体翻转图片的方法
2015/05/04 Javascript
jQuery实现可以控制图片旋转角度效果(附demo源码下载)
2016/01/27 Javascript
jQuery插件扩展extend的简单实现原理
2016/06/24 Javascript
JavaScript基础——使用Canvas绘图
2016/11/02 Javascript
Node.js的Mongodb使用实例
2016/12/30 Javascript
基于angular实现模拟微信小程序swiper组件
2017/06/11 Javascript
JavaScript实现简单的隐藏式侧边栏功能示例
2018/08/31 Javascript
Postman环境变量全局变量使用方法详解
2020/08/13 Javascript
vue 监听 Treeselect 选择项的改变操作
2020/08/31 Javascript
从零学Python之入门(三)序列
2014/05/25 Python
python通过线程实现定时器timer的方法
2015/03/16 Python
python实现简单socket通信的方法
2016/04/19 Python
Python中使用多进程来实现并行处理的方法小结
2017/08/09 Python
Python图像处理实现两幅图像合成一幅图像的方法【测试可用】
2019/01/04 Python
利用python脚本如何简化jar操作命令
2019/02/24 Python
python opencv minAreaRect 生成最小外接矩形的方法
2019/07/01 Python
手把手教你pycharm专业版安装破解教程(linux版)
2019/09/26 Python
Python3和pyqt5实现控件数据动态显示方式
2019/12/13 Python
Python命令行click参数用法解析
2019/12/19 Python
Python PyPDF2模块安装使用解析
2020/01/19 Python
Jacadi Paris美国官方网站:法国童装品牌
2017/10/15 全球购物
蒙蒂塞罗商店:Monticello Shop
2018/11/25 全球购物
设计模式的基本要素是什么
2014/04/21 面试题
Prototype中如何为一个元素添加一个方法
2014/12/08 面试题
使用Vue.js和MJML创建响应式电子邮件
2021/03/23 Vue.js
大三毕业自我鉴定
2014/01/15 职场文书
列车乘务员工作不细心检讨书
2014/10/07 职场文书
Python保存并浏览用户的历史记录
2022/04/29 Python