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 相关文章推荐
Smarty结合Ajax实现无刷新留言本实例
Jan 02 PHP
PHP strtok()函数的优点分析
Mar 02 PHP
php中使用Akismet防止垃圾评论的代码
Jun 10 PHP
让Json更懂中文(JSON_UNESCAPED_UNICODE)
Oct 27 PHP
php跨域cookie共享使用方法
Feb 20 PHP
百度实时推送api接口应用示例
Oct 21 PHP
php结合ACCESS的跨库查询功能
Jun 12 PHP
基于PHP给大家讲解防刷票的一些技巧
Nov 18 PHP
Yii2中设置与获取别名的函数(setAlias和getAlias)用法分析
Jul 25 PHP
微信网页授权(OAuth2.0) PHP 源码简单实现
Aug 29 PHP
PHP-X系列教程之内置函数的使用示例
Oct 16 PHP
php合并数组并保留键值的实现方法
Mar 12 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设置session值和cookies的学习示例
2014/03/21 PHP
PHP判断是否为空的几个函数对比
2015/04/21 PHP
phpstorm最新激活码分享亲测phpstorm2020.2.3版可用
2020/11/22 PHP
很酷的javascript loading效果代码
2008/06/18 Javascript
Prototype String对象 学习
2009/07/19 Javascript
extjs 的权限问题 要求控制的对象是 菜单,按钮,URL
2010/03/09 Javascript
本地对象Array的原型扩展实现代码
2010/12/04 Javascript
yepnope.js 异步加载资源文件
2011/09/08 Javascript
jQuery的显示和隐藏方法与css隐藏的样式对比
2013/10/18 Javascript
js调试系列 初识控制台
2014/06/18 Javascript
js调试工具Console命令详解
2014/10/21 Javascript
angularjs学习笔记之双向数据绑定
2015/09/26 Javascript
JavaScript中误用/g导致的正则test()无法正确重复执行的解决方案
2016/07/27 Javascript
jQuery图片轮播(二)利用构造函数和原型创建对象以实现继承
2016/12/06 Javascript
使用base64对图片的二进制进行编码并用ajax进行显示
2017/01/03 Javascript
JS验证字符串功能
2017/02/22 Javascript
React Native之TextInput组件解析示例
2017/08/22 Javascript
vue中$set的使用(结合在实际应用中遇到的坑)
2018/07/10 Javascript
JavaScript实现邮箱后缀提示功能的示例代码
2018/12/13 Javascript
Vue分页器实现原理详解
2019/06/28 Javascript
vue中el-input绑定键盘按键(按键修饰符)
2020/07/22 Javascript
python搭建简易服务器分析与实现
2012/12/15 Python
python 安装virtualenv和virtualenvwrapper的方法
2017/01/13 Python
tensorflow使用指定gpu的方法
2020/02/04 Python
在PyTorch中使用标签平滑正则化的问题
2020/04/03 Python
Python dict的常用方法示例代码
2020/06/23 Python
python简单实现9宫格图片实例
2020/09/03 Python
Python 高效编程技巧分享
2020/09/10 Python
施华洛世奇西班牙官网:SWAROVSKI西班牙
2019/06/06 全球购物
C# .NET面试题
2015/11/28 面试题
销售团队激励口号
2014/06/06 职场文书
建筑院校毕业生求职信
2014/06/13 职场文书
高中学校对照检查材料
2014/08/31 职场文书
机关领导查摆四风思想汇报
2014/09/13 职场文书
冬季作息时间调整通知
2015/04/24 职场文书
2016大学生暑期社会实践心得体会
2016/01/14 职场文书