php中替换字符串函数strtr()和str_repalce()的用法与区别


Posted in PHP onNovember 25, 2016

首先来看看这个php字符串替换函数 strtr()的两种用法:

strtr(string,from,to) 或者strtr(string,array) 首先针对strtr函数第一种方式:

我们看看下面的举例:

<?php
echo strtr("I Love you","Lo","lO");
?>

得到的结果是: I lOve yOu

这个结果提醒我们:

1.strtr它是区分大小写的

2.strtr的替换是很特殊的,你注意看后面那个yOu,中间的O被替换的,这显然不是我们的本意。

再举一个特殊例子,说明这个php的sttr函数的怪异

<?php
echo strtr("I Love you","Love","");
?>

结果是: I Love you

什么也不会改变,所以strtr需要注意的是:

3.不能被替换为空,也就是末位那个参数不能是空字符串,当然空格是可以的。

再次举例strtr函数的另一种情况:

<?php
echo strtr("I Loves you","Love","lOvEA");
?>

结果是: I lOvEs yOu

注意看第三个参数的A,在结果中并没有出现。

4.我不建议用strtr以少换多。

ok,既然这个strtr函数挺麻烦为什么还要用呢?

原因是,它的速度很快。据说,strtr 比 str_replace 快四倍。

5.能用strtr函数的时候一定要用。

那怎么用才舒服?

这就是它的第二种情况:

strtr(string,array)

6.strtr符合意愿的使用方法

<?php
$table_change = array('you'=>'her sister');
echo strtr("I Love you",$table_change);
?>

结果为: I Love her sister

7.小技巧:你想到替换什么你就往数组加什么

比如:

<?php
$table_change = array('you'=>'her sister');
$table_change += array('Love' => 'hate');
echo strtr("I Love you",$table_change);
?>

结果是: I hate her sister

再次提醒那个Love 写成love 是行不通的哦。

字符串取代。

语法: string str_replace(string needle, string str, string haystack);

返回值: 字符串

函数种类: 资料处理

内容说明:

本函数将字符串 str 代入 haystack 字符串中,将所有的 needle 置换成 str。

下例将 %body% 以 black 取代

<?php
$bodytag = str_replace("%body%", "black", "<body text=%body%>");
echo $bodytag;
?>

格式:

    [@str_replace("要替换的旧内容", "要取代原内容的新字符", $被替换内容的变量名)]

    [@str_replace(array('旧1','旧2','旧3'), array('新1','新2','新3'), $被替换内容的变量名)]

    [@str_replace(array('旧1','旧2','旧3'), '新内容', $被替换内容的变量名)]

实例:

多对一替换:想把内容字段里所有的<p></p>标签清除掉,替换成空 [ @str_replace(array('<p>','</p>'), '', $Content) ]

一对一替换:想把内容字段里所有的<br>标签换成<p> [ @str_replace('<br>', '<p>', $Content) ]

多对多替换:想把内容字段里的<br>换成<br />, 同时<p>换<hr>,把</p>全清除 [ @str_replace(array('<br>', '<p>','</p>') , array('<br />','<hr>',''), $Content) ]

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用PHP能有所帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
dede3.1分页文字采集过滤规则详说(图文教程)
Apr 03 PHP
PHP 设计模式之观察者模式介绍
Feb 22 PHP
PHP保留两位小数并且四舍五入及不四舍五入的方法
Sep 22 PHP
php读取mysql的简单实例
Jan 15 PHP
PHP程序员必须清楚的问题汇总
Dec 18 PHP
php将textarea数据提交到mysql出现很多空格的解决方法
Dec 19 PHP
CodeIgniter与PHP5.6的兼容问题
Jul 16 PHP
CodeIgniter多语言实现方法详解
Jan 20 PHP
php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法
Oct 12 PHP
YII2框架中behavior行为的理解与使用方法示例
Mar 13 PHP
PHP数组与字符串互相转换实例
May 05 PHP
PHP实现爬虫爬取图片代码实例
Mar 03 PHP
Zend Framework上传文件重命名的实现方法
Nov 25 #PHP
PHP读取文本文件并逐行输出该行使用最多的字符与对应次数的方法
Nov 25 #PHP
解决PHP程序运行时:Fatal error: Maximum execution time of 30 seconds exceeded in的错误提示
Nov 25 #PHP
php对接java现实加签验签的实例
Nov 25 #PHP
php使用函数pathinfo()、parse_url()和basename()解析URL
Nov 25 #PHP
php实现的网页版剪刀石头布游戏示例
Nov 25 #PHP
PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID
Nov 25 #PHP
You might like
php 批量查询搜狗sogou代码分享
2015/05/17 PHP
windows8.1下Apache+Php+MySQL配置步骤
2015/10/30 PHP
PHP多维数组转一维数组的简单实现方法
2015/12/23 PHP
PHP图片加水印实现方法
2016/05/06 PHP
js常用函数 不错
2006/09/08 Javascript
判断文件是否正在被使用的JS代码
2013/12/21 Javascript
JS中的log对象获取以及debug的写法介绍
2014/03/03 Javascript
jQuery 删除/替换DOM元素的几种方式
2014/05/20 Javascript
iframe调用父页面函数示例详解
2014/07/17 Javascript
javascript 获取函数形参个数
2014/07/31 Javascript
原创jQuery弹出层插件分享
2015/04/02 Javascript
JS实现页面中所有img对象添加onclick事件及新窗口查看图片的方法
2016/12/27 Javascript
JS实现简单抖动效果
2017/06/01 Javascript
使用JavaScript开发跨平台的桌面应用详解
2017/07/27 Javascript
代码分析vue中如何配置less
2018/09/28 Javascript
使用webpack/gulp构建TypeScript项目的方法示例
2019/12/18 Javascript
vue2路由基本用法实例分析
2020/03/06 Javascript
Python实现的多线程http压力测试代码
2017/02/08 Python
回调函数的意义以及python实现实例
2017/06/20 Python
Python实现替换文件中指定内容的方法
2018/03/19 Python
Numpy截取指定范围内的数据方法
2018/11/14 Python
Window环境下Scrapy开发环境搭建
2018/11/18 Python
澳大利亚在线床零售商:Bedworks
2020/09/01 全球购物
使用索引有什么好处
2016/07/27 面试题
大专生自荐信
2013/10/04 职场文书
女大学生自我鉴定
2013/12/09 职场文书
2014年综治宣传月活动总结
2014/04/28 职场文书
公安局班子个人对照检查材料思想汇报
2014/10/09 职场文书
2014教师年度思想工作总结
2014/11/10 职场文书
2014年工作总结与下年工作计划
2014/11/27 职场文书
司机个人年终总结
2015/03/03 职场文书
2015医德医风个人工作总结
2015/04/02 职场文书
教您:房贷工资收入证明应该怎么写?
2019/08/19 职场文书
python 提取html文本的方法
2021/05/20 Python
pandas提升计算效率的一些方法汇总
2021/05/30 Python
详解Spring Boot使用系统参数表提升系统的灵活性
2021/06/30 Java/Android