php - 转义字符串

时间:2012-12-11 16:08:54

标签: php escaping newline

我正忙着一个必须使用不同语言的PHP项目,所以我创建了一个系统,其中包含从文件中读取的字符串,但是当我想要读取这样的文件时:

用户名/ \ n密码错误

它显示\ n而不是将其转义为换行符。我怎样才能让PHP这样做?

已经吃完了, DirkWillem

2 个答案:

答案 0 :(得分:0)

这可能是因为您已将字符串封装在单引号'中。您必须将字符串封装在双引号"中才能使\n正常工作。

示例:

http://codepad.viper-7.com/Fr4SHH

请注意,我在网页上显示时使用nl2br功能将\n替换为<br />。但是你可以看到,在第一个字符串中,\n只是作为字符串打印,但\n确实在第二个字符串中被解析。

这是因为PHP将\n视为某种变量。变量仅适用于带双引号的字符串。

答案 1 :(得分:0)

考虑使用合适的存储格式而不是您自己创建的内容。 base64_encode()或json_encode()将是很好的候选者。

但是,要解决您的直接问题,请使用str_replace()

$new = str_replace('\n', "\n", $str);