PHP中str_replace函数使用小结


Posted in PHP onOctober 11, 2008

这段时间在看《PHP和MySQL Web开发》一书看到str_replace讲解,一段小提示写到:可以为str_replace的三个都使用数组传入,但讲解比较简单,于是决定自己的试验一下该函数在各个参数传入数组时的执行结果。

函数原型:mixed str_replace(mixed needle,mixed new_needle,mixed haystack[,int &count]);
needle:要被替换的字符串,new_needle:替换用的字符串,haystack:操作字符串,count:替换次数【可选参数】

我们重点试验前三个在使用数组是的执行方式:

在都不使用数组时,该函数直接使用new_needle替换所有的needle并返回替换后的字符串。如:str_replace("m","n","my name is jim!")返回ny nane is jin!

1、只对needle使用数组。

示例:str_replace(array('m','i'),'n',"my name is jim!");返回:ny nane ns jnn!
可以看出,函数顺序性的对数组中每个字符串进行替换,并返回替换后的字符串。

2、只对new_needle使用数组。

示例:str_replace('m',array('n','z'),"my name is jim!\n")返回:Arrayy naArraye is jiArray!
该替换比较有意思,如果只对第二个参数使用数组则函数将其作为字符串Array进行使用,将所有的needle替换为了数组。

3、只对haystack使用数组。

示例:str_replace("m","n",array("my name is jim!","the game is over!"))该语句执行结果返回一个数组,即分别为传入的两个字符串替换后的结果。
如果输出数组内容会看到:ny nane is jin! the gane is over!

4、对needle和new_needle都使用数组。

示例:str_replace(array("m","i"),array("n","z"),"my name is jim!")返回:ny nane zs jzn!
查看执行结果可以发现,如果前两个参数都使用数组则函数把数组各个对象项字符串进行了替换,及needle的第一项替换为new_needle的第一项。以此类推。

如果needle数组比new_deedle长,例如:str_replace(array("m","i","s"),array("n","z"),"my name is jim!");返回:ny nane z jzn!可见,对于needle数组多出来的字符串被替换为了空串。
如果new_needle数组比needle长,例如:str_replace(array("m","i"),array("n","z","x"),"my name is jim!")返回ny nane zs jzn!可见new_needle多余的项被忽略。

5、三个参数都使用数组。

例如:str_replace(array("m","i"),array("n","z"),array("my name is jim!","the game is over"))返回的数组内容:ny nane zs jzn!the gane zs over
这个比较好理解,对两个字符串分别执行替换。

简单总结下,防止自己忘记!

PHP 相关文章推荐
PHP中实现进程间通讯
Oct 09 PHP
木翼下载系统中说明的PHP安全配置方法
Jun 16 PHP
解决MySQL中文输出变成问号的问题
Jun 05 PHP
php 字符过滤类,用于过滤各类用户输入的数据
May 27 PHP
PHP编程最快明白(第一讲 软件环境和准备工作)
Oct 25 PHP
php中全局变量global的使用演示代码
May 18 PHP
PHP数组 为文章加关键字连接 文章内容自动加链接
Dec 29 PHP
浅谈php中mysql与mysqli的区别分析
Jun 10 PHP
你应该知道PHP浮点数知识
May 13 PHP
php workerman定时任务的实现代码
Dec 23 PHP
PHP上传图片到数据库并显示的实例代码
Dec 20 PHP
php preg_match_all结合str_replace替换内容中所有img
Oct 11 #PHP
php email邮箱正则
Oct 08 #PHP
php获取地址栏信息的代码
Oct 08 #PHP
Cannot modify header information错误解决方法
Oct 08 #PHP
不用mod_rewrite直接用php实现伪静态化页面代码
Oct 04 #PHP
php 友好URL的实现(吐血推荐)
Oct 04 #PHP
PHP注释实例技巧
Oct 03 #PHP
You might like
PHP实现获取域名的方法小结
2014/11/05 PHP
PHP扩展模块memcached长连接使用方法分析
2014/12/24 PHP
php简单实现查询数据库返回json数据
2015/04/16 PHP
基于PHP实现短信验证码接口(容联运通讯)
2016/09/06 PHP
jquery 简单应用示例总结
2013/08/09 Javascript
JS+CSS实现一个气泡提示框
2013/08/18 Javascript
教你用AngularJS框架一行JS代码实现控件验证效果
2014/06/23 Javascript
直接在JS里创建JSON数据然后遍历使用
2014/07/25 Javascript
浅谈javascript中自定义模版
2015/01/29 Javascript
jquery实现公告翻滚效果
2015/02/27 Javascript
JavaScript模拟重力状态下抛物运动的方法
2015/03/03 Javascript
JS原型、原型链深入理解
2016/02/27 Javascript
前端分页功能的实现以及原理(jQuery)
2017/01/22 Javascript
关于vuex的学习实践笔记
2017/04/05 Javascript
javascript过滤数组重复元素的实现方法
2017/05/03 Javascript
微信小程序公用参数与公用方法用法示例
2019/01/09 Javascript
详解jQuery-each()方法
2019/03/13 jQuery
JavaScript面向对象核心知识与概念归纳整理
2020/05/09 Javascript
基于vue与element实现创建试卷相关功能(实例代码)
2020/12/07 Vue.js
简单介绍使用Python解析并修改XML文档的方法
2015/10/15 Python
Python用zip函数同时遍历多个迭代器示例详解
2016/11/14 Python
Python之读取TXT文件的方法小结
2018/04/27 Python
python的pip安装以及使用教程
2018/09/18 Python
python微信公众号之关注公众号自动回复
2018/10/25 Python
俄罗斯优惠券网站:BIGLION
2017/05/21 全球购物
瑞典时尚耳机品牌:Urbanears
2017/07/26 全球购物
世界上最好的旅行夹克:BauBax
2018/12/23 全球购物
美国健康和保健平台:healtop
2020/07/02 全球购物
毕业生就业自荐信
2013/12/04 职场文书
开水果连锁店创业计划书
2013/12/29 职场文书
会计电算化学生个人的自我评价
2014/02/08 职场文书
基层党员群众路线整改措施及努力方向
2014/10/28 职场文书
2015个人年度工作总结范文
2015/05/28 职场文书
党支部综合考察意见
2015/06/01 职场文书
小学课改工作总结
2015/08/13 职场文书
nginx限制并发连接请求数的方法
2021/04/01 Servers