• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

字符串处理有关问题preg_replace(),出现奇怪的替换,求大牛解决

php 搞代码 4年前 (2022-01-24) 22次浏览 已收录 0个评论

字符串处理问题preg_replace(),出现奇怪的替换,求大牛解决!
http://.com/item.htm?id=14135039282&ref=http%3A%2F%2Fsearch8.taobao.com%2Fsearch%3Fq%3D%25C4%25DA%25BF%25E3%2B%25C4%25D0%26cat%3D50026972%26commend%3Dall%26style%3Dgrid%26ppath%3D2048150%253A105206%26cps%3Dyes%26pid

上面是原字符串,为什么经过下面处理

<?php echo preg_replace(‘/\s/’,’ ‘,preg_replace(‘/\r\n/s’,’
‘,htmlentities($rw[‘content’],ENT_QUOTES,GB2312))) ?>

处理后显示成这样,请注意?号后自动换行了,这里想不通
http://.com/item.htm?
id=14135039282&ref=http%3A%2F%2Fsearch8.taobao.com%2Fsearch%3Fq%3D%25C4%2

另外还问个问题,数据库中是这样存储的字符串



而经过<?php echo preg_replace(‘/\s/’,’ ‘,preg_replace(‘/\r/s’,’
‘,htmlentities($rw[‘content’],ENT_QUOTES,GB2312))) ?>这样处理后,显示成如下了



这里为什么会替换个空格呀,在里层的模式里加了\n就不会出现上面那种情况了

——解决方案——————–
不用再求解了,这根本就不是问题,就算直接echo出来,?后面也会换行,浏览器把问号之间的字符串当一个单词处理,单词长度超过一屏就回换行,用word编辑英文的时候 一样的效果,所以仅仅是浏览器方面的原因
你可以在下面一段 随便插问号 然后调节浏览器宽度试试

PHP code

<?phpecho "http://.com/item.htm?id=14135039282&ref=http%3A%2F%2Fsearch8.taobao.com%2Fsearch%3Fq%3D%25C4%25DA%25B<div style="color:transparent">本文来源gaodai.ma#com搞##代!^码@网*</div><pre>搞gaodaima代码

F%25E3%2B%25C4%25D0%26cat%3D50026972%26commend%3Dall%26style%3Dgrid%26ppath%3D2048150%253A105206%26cps%3Dyes%26pid”;


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:字符串处理有关问题preg_replace(),出现奇怪的替换,求大牛解决

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址