免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5832 | 回复: 3
打印 上一主题 下一主题

[求助]字符串中同时含有单引号和双引号的处理 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-04-09 12:14 |只看该作者 |倒序浏览
本帖最后由 bzdghdn 于 2010-04-09 12:34 编辑

有一个!USpecial Live!U02/14 SAK. <br />loves "DOT" St. Valentine's Day Live !!! 这样的字符串。它是用一个自定义标签直接从其它的地方读出来的,也就是说我无法对其中的单引号和双引号转义,反正读出来就是这个值。现在我需要把其中的<br/>去掉,结果遇到了问题。 这个系统的情况是它先用了一个模版系统把模版文件转成php文件,然后再把这个php解释执行。

模版文件中<$MTEntryTitle$>这个标签就是代表上面红色的字符串。
模版文件                         
  1. str_replace(array('<br />', '<br/>','<br>'), "", <$MTEntryTitle$>)  
复制代码
对应php
  1. str_replace(array(array('<br />', '<br/>','<br>'), "", !USpecial Live!U02/14 SAK. <br />loves "DOT" St. Valentine's Day Live !!!)
复制代码
失败,因为php中定义的字符串要用'或"包含起来

模版文件
  1. str_replace(array('<br />', '<br/>','<br>'), "", '<$MTEntryTitle$>')  
复制代码
对应php
  1. str_replace(array(array('<br />', '<br/>','<br>'), "",'!USpecial Live!U02/14 SAK. <br />loves "DOT" St. Valentine's Day Live !!!')
复制代码
失败,因为字符串中含有一个单引号

模版文件
  1. str_replace(array('<br />', '<br/>','<br>'), "", "<$MTEntryTitle$>")  
复制代码
对应php
  1. str_replace(array(array('<br />', '<br/>','<br>'), "","!USpecial Live!U02/14 SAK. <br />loves "DOT" St. Valentine's Day Live !!!")
复制代码
失败,因为中含有双引号

模版文件

  1. $title = << HTML;
  2. <$MTEntryTitle$>
  3. HTML;
  4. str_replace(array('<br />', '<br/>','<br>'), "", $title)
复制代码
对应php
  1. str_replace(array(array('<br />', '<br/>','<br>'), "",'!USpecial Live!U02/14 SAK. <br />loves "DOT" St. Valentine's Day Live !!!')
复制代码
失败,php自动用单引号包含起来

现在的问题是,如果我要处理这个字符串,首先要把它作为参数传给某个字符串处理函数。但是不管我用单引号还是双引号把它包含起来,都会出错。

论坛徽章:
0
2 [报告]
发表于 2010-04-09 12:36 |只看该作者
回复 1# bzdghdn


    对不起,
  1. $title = << HTML;
  2. <$MTEntryTitle$>
  3. HTML;
  4. str_replace(array('<br />', '<br/>','<br>'), "", $title)
复制代码
是可以成功的,我自己搞错了

论坛徽章:
0
3 [报告]
发表于 2010-04-15 21:14 |只看该作者

论坛徽章:
0
4 [报告]
发表于 2010-04-16 15:21 |只看该作者
就算你的字符串是从别的地方读出来的,也一样可以转义啊
string addslashes ( string str )


返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线。这些字符是单引号(')、双引号(")、反斜线(\)与 NUL(NULL 字符)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP