[英]Remove backslashes while sending email in php
我正在尝试使用以下代码发送电子邮件
$mess00 = "Store Email: " . $storeEmail . "\r\n";
...
$message = $mess00 . "<br \><br \>" . $mes1 . "<br \><br \>" . $mess0 . "<br \>" . $mess1 . "<br \>" . $mess2 . "<br \>" . $mess3;
$message = "<html><body><p>".$message."</p></body></html>";
try {
$this->Mail($storeEmail, $subject, $message);
现在假设,如果商店名称为StackOver's Inc
,在电子邮件中,我得到StackOver\\'s Inc.
如何做到这一点,以便在收到电子邮件时可以删除这些\\。
PS这些名称存储在数据库中。
发送消息之前,需要使用stripslashes()删除反斜杠。
$clean_message = stripslashes ($message);
$this->Mail($storeEmail, $subject, $clean_message);
这意味着数据库中的数据已经错误。 在插入时,您启用了magic_quotes_gpc
; 此功能在5.3中已弃用,而在5.4中已完全删除,但较旧的版本仍会默认启用该功能。
阅读本文,了解如果无法升级安装,如何在现有环境中禁用魔术引号。
解决上述问题后,您仍然必须修复所有受影响的数据库条目; 您可以通过加载每个记录,应用stripslashes()
并再次保存来做到这一点。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.