PHP处理回车换行时应该注意的一个问题
大家都知道Windows下的回车换行和Linux下的回车换行有区别,分别是
Windows -- \r\n
Linux -- \n
在我们的数据入库、出库的时候要特别注意这个问题,特别是在进行显示处理的时候,比如使用表单中的 textarea 进行了一段文字的提交,客户端是Windows的话就会包含\r\n,如果要显示在页面上,这些都是不起作用的,我们需要替换成页面中可以辨认的回车 <br />
这个时侯就可以使用 ereg_replace()这个函数。
我就是在这个地方遇到了问题,比较一下下面两条语句
ereg_replace('\r\n', '<br />', $value);
ereg_replace("\r\n", "<br />", $value);
问题就出在单引号和双引号上,如果我们始终使用双引号,我们肯定是安全的。但是如果我们使用单引号,那么那些元字符就会被解释成其他的含义,从而导致了这句执行失败。
所以如果发现替换失败或者失效的时候,就从引号上找找原因吧。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步