PHP函数rtrim()使用中的怪异现象分析
发布:smiling 来源: PHP粉丝网 添加日期:2018-08-02 17:08:11 浏览: 评论:0
今天用rtrim()函数时遇到了一个奇怪的问题:
echortrim('<p></div>','</div>');// 输出为 <p
echoltrim('www.phpfensi.com','www.');// 输出为 phpfensi.com
以上的输出结果有点出人意料,本来我想第一行应该输出<p>,第二行会输出phpfensi.com。
这个问题纠结了我好久,一直没有找到原因,后来在手册中找到了答案:
rtrim()是以字符为单位替换,而不是以字符串的。从右往左替换时</div>6个字符肯定会被替换掉的,再往左时遇到了>,因为>也包含在rtirm()的第二个参数的字符串(</div>)中,所以也被替换掉了,当再往左时遇到了p,这时p不包含在第二个参数的字符串中。所以替换停止,输出了<p。
如果这样理解的话,第二行的输出结果就是在意料之中了。呵呵……手册中已经写的清清楚楚了。原文:
You can also specify the characters you want to strip, by means of the charlist parameter. Simply list all characters that you want to be stripped. With .. you can specify a range of characters。
由此可见,rtrim、ltrim与trim第二个参数是作为一组字符列表进行匹配操作的。这与我们以往认识的str_replace函数的替换操作不一样。
Tags: rtrim() PHP函数
相关文章
- ·php ltrim() rtrim() trim()删除字符空格(2014-09-18)
- ·什么函数能够把文件从一个目录下转移到另外一个目录下?(2013-11-27)
- ·计算一个程序的执行时间的函数(2013-11-27)
- ·强大的php检查文件类型(2013-11-30)
- ·强php编码转换函数(2013-11-30)
- ·PHP函数学习之PHP函数点评(2014-01-14)
- ·php函数ob_start()、ob_end_clean()、ob_get_contents()(2014-03-22)
- ·关于php函数isset和empty的一些误解(2014-06-11)
- ·php中使用is_numberic函数注意事项(2014-08-21)
- ·PHP利用str_replace()函数防注入(2014-08-22)
- ·PHP中自带函数过滤sql注入代码分析(2014-08-23)
- ·php中json_encode函数对中文的处理例子(2014-08-27)
- ·php里常用的远程采集函数(2014-08-27)
- ·用php写 ftp文件上传函数教程(2014-09-09)
- ·php mysql_real_escape_string()函数(2014-09-11)
- ·php odbc_connect()函数说明与实例代码(2014-09-11)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)