我正忙于一个必须以不同语言工作的 PHP 项目,所以我制作了一个系统,其中包含从文件中读取的字符串,但是当我想读取这样的文件时:
用户名/\n 密码错误
它显示 \n 而不是将其转义到换行符。我怎样才能让 PHP 做到这一点?
已经超过了,DirkWillem
这可能是因为您已将字符串封装在单引号'
中。您必须将字符串封装在双引号"
中才能\n
正常工作。
例子:
http://codepad.viper-7.com/Fr4SHH
请注意,我在网页上显示时使用该功能nl2br
替换\n
to 。<br />
但是您可以看到,在第一个字符串中,\n
只是简单地打印为字符串,但\n
确实在第二个字符串中被解析。
这是因为 PHP 将\n
其视为某种变量。并且变量仅适用于带有双引号的字符串。
考虑使用合适的存储格式,而不是您自己创建的格式。base64_encode() 或 json_encode() 将是不错的选择。
但是,要解决您眼前的问题,只需使用 str_replace()
$new = str_replace('\n', "\n", $str);