我试图调试另一个开发者在这个动态输入生成器工具中的问题所在。他使用'\ r \ n'来基本上将值存储为select中的选项。我试图弄清楚这是不是在做什么,因为当渲染选择时,字符串作为一个长字符串从数据库中出来。我通过nl2br运行它来验证。 所以我确定问题是当数据在编辑命令中保存到数据库时,因为它似乎正在创建。但除此之外,这有点......
我的问题是:有没有一种简单的方法让var_dump或print_r函数在输出中包含'\ r \ n'?
所有我真正想要做的就是在输出之前用其他东西替换这些字符,这是一种痛苦,所以如果这是一种更简单的方法会很棒。
答案 0 :(得分:1)
使用preg_replace加倍反斜杠
<?php var_dump(preg_replace(array('/\n/','/\t/','/\s/'), array('\\\\n', '\\\\t', '\\\\s'), "\n\n"));
你可以编写一个函数,不需要一直重复这段代码,我也想把我的var_dump放在&lt; pre&gt;里面。标签
答案 1 :(得分:0)
如果要捕获字符串\r\n
,请将其放在单引号中。
这:
echo "Here is line one \r\n Here is line two";
呈现:
Here is line one
Here is line two
鉴于此:
echo 'Here is line one \r\n still on line one';
呈现:
Here is line one \r\n still on line one