2010-10-19 35 views
1

这是一个简单的问题,但我一直未能解决这个问题。我的问题是,我使用的libmail类发送电子邮件。如何更换"到“使用PHP字符串函数

$message = htmlspecialchars(stripslashes(strip_tags($message))); 

一切工作正常,但如果我使用“在文本中,它将作为"在邮件中被忽略。我已经试过了:

mail ($strTo, $this->xheaders['Subject'], htmlentities($this->fullBody), $this->headers,"-f $rtpth"); 

如何解决这个问题?

回答

4

离开了用htmlspecialchars和htmlentites电话,他们正在转换您的引号的HTML实体,这意味着你的“字符转换为& QUOT;

+0

+1好建议。您只需要调用htmlspecialchars来打印为HTML格式的数据。 – Spudley 2010-10-19 12:54:18

-1

集ENT_NOQUOTES,“应该那么不可替代​​http://php.net/manual/de/function.htmlspecialchars.php

+0

他可能只是滥用htmlentities和htmlspecialchars。这会使这些功能在其他情况下无用,并可能削弱安全性。 – Palantir 2010-10-19 13:06:24

+0

好吧,如果你有他的代码投票问题,他的问题下来,不是一个合法的答案如何防止htmlspecialchars转换引号... jezz ... – Hannes 2010-10-19 13:12:06