如何处理撇号和\ r \ n在邮件功能?

时间:2012-07-18 09:12:23

标签: php html-email

我有邮件功能从textarea获取邮件消息。但只要有撇号和新行,它就会显示如下。

示例输出: 评论:你的邮寄地址错了。你不能提供另一个吗? 调查答案: item:你做得很好。不是吗?\ nitem2:最好喝一杯茶吗?\ n

1)撇号有三个斜线。这可能与魔法逃脱有关吗? striplashes函数是更好的选择吗?

2)新行转换为\ r \ n。问题是\ r \ n可能是一个Windows工件。在Linux服务器上,它可能只是\ n。是否足以使用str_replace('\ r \ n',“\ n”,$ message); ?然后str_replace(“\ n”,“
”,$ message); ?

2 个答案:

答案 0 :(得分:1)

1)尝试添加stripslashes($ message);应该解决问题;)。

2)如果你用str_replace()删除后,为什么还要添加\ n?更好的解决方案是在消息中使用HTML。在消息中添加支持html的标头,然后中断。

编辑:我不确定第二个问题的回答是否正是你的意思。如果没有,请描述一下,所以我可以帮助你:))!

答案 1 :(得分:0)

$ string = str_replace(array(“\ n”,“\ r \ n”,“\”),'',$ string);