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加速的eAccelerator dll支持文件打包下载
Sep 30 PHP
php中获取远程客户端的真实ip地址的方法
Aug 03 PHP
PHP url 加密解密函数代码
Aug 26 PHP
php变量作用域的深入解析
Jun 03 PHP
PHP 关于访问控制的和运算符优先级介绍
Jul 08 PHP
php中mt_rand()随机数函数用法
Nov 24 PHP
php计算2个日期的差值函数分享
Feb 02 PHP
php恢复数组的key为数字序列的方法
Apr 28 PHP
PHP扩展开发教程(总结)
Nov 04 PHP
php中mkdir()函数的权限问题分析
Sep 24 PHP
php分页查询的简单实现代码
Mar 14 PHP
php+redis消息队列实现抢购功能
Feb 08 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的一个完美GIF等比缩放类,附带去除缩放黑背景
2014/04/01 PHP
php设置静态内容缓存时间的方法
2014/12/01 PHP
PHP+shell实现多线程的方法
2015/07/01 PHP
PHP使用Redis实现Session共享的实现示例
2019/05/12 PHP
PHP连续签到功能实现方法详解
2019/12/04 PHP
飞鱼(shqlsl) javascript作品集
2006/12/16 Javascript
jquery里的正则表达式说明
2011/08/03 Javascript
jquery修改属性值实例代码(设置属性值)
2014/01/06 Javascript
js二维数组排序的简单示例代码
2014/01/24 Javascript
JavaScript检测浏览器cookie是否已经启动的方法
2015/02/27 Javascript
javascript入门教程基础篇
2015/11/16 Javascript
jQuery实现select模糊查询(反射机制)
2017/01/14 Javascript
Vue $mount实战之实现消息弹窗组件
2019/04/22 Javascript
[39:21]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.24
2019/09/10 DOTA
Python算法之栈(stack)的实现
2014/08/18 Python
python sort、sorted高级排序技巧
2014/11/21 Python
Python实现抓取页面上链接的简单爬虫分享
2015/01/21 Python
深入理解Python中的元类(metaclass)
2015/02/14 Python
python中base64加密解密方法实例分析
2015/05/16 Python
21行Python代码实现拼写检查器
2016/01/25 Python
django celery redis使用具体实践
2019/04/08 Python
django drf框架中的user验证以及JWT拓展的介绍
2019/08/12 Python
python 矢量数据转栅格数据代码实例
2019/09/30 Python
Python实现FLV视频拼接功能
2020/01/21 Python
tensorflow 获取checkpoint中的变量列表实例
2020/02/11 Python
解决Keras中CNN输入维度报错问题
2020/06/29 Python
详解基于Facecognition+Opencv快速搭建人脸识别及跟踪应用
2021/01/21 Python
UGG雪地靴荷兰官网:UGG荷兰
2016/09/09 全球购物
赫里福德的一家乡村零售商店:Philip Morris & Son
2017/06/25 全球购物
丹尼尔惠灵顿手表天猫官方旗舰店:Daniel Wellington
2017/08/25 全球购物
英国电子专家:maplin
2019/09/04 全球购物
linux下进程间通信的方式
2014/12/23 面试题
EJB发布WEB服务一般步骤
2012/10/31 面试题
工程材料采购方案
2014/05/18 职场文书
投标诚信承诺书
2014/05/26 职场文书
八一建军节营销活动方案
2014/08/31 职场文书