所以,我想使用mail()
为我的网站发送注册电子邮件,但是我想让它看起来不错,同时在必要时回到好的旧明文;混合信息电子邮件。
但是我希望它从John Doe发送,他的电子邮件是johndoe@example.com到recipient@example.com。
HTML代码应为<html><head><title>HTML email!</title></head><body><p>This is HTML!</p></body</html>
,明文消息应为This is plaintext.
mail()
要完成此任务的论据是什么?我知道其中有很多涉及以某种疯狂的方式更改标题。
非常感谢!
答案 0 :(得分:2)
使用类似SwiftMailer之类的内容,因为它具有防止标头注入等优点。考虑到这一点,是的,您必须设置自定义标题并使用多部分正文来实现您的目标:
/***************************************************************
Creating Email: Headers, BODY
1- HTML Email WIthout Attachment!! <<-------- H T M L ---------
***************************************************************/
#---->Headers Part
$Headers =<<<AKAM
From: $FromName <$FromEmail>
Reply-To: $FromEmail
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="$boundary1"
AKAM;
#---->BODY Part
$Body =<<<AKAM
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="$boundary1"
This is a multi-part message in MIME format.
--$boundary1
Content-Type: text/plain;
charset="windows-1256"
Content-Transfer-Encoding: quoted-printable
$TextMessage
--$boundary1
Content-Type: text/html;
charset="windows-1256"
Content-Transfer-Encoding: quoted-printable
$HTMLMessage
--$boundary1--
AKAM;
来源:http://www.php.net/manual/en/function.mail.php#83491
这是很多工作。再次,这就是为什么我建议有一个可以为你处理所有这些的库,以及其他功能。
答案 1 :(得分:1)
一切都在这里(例#4):http://php.net/manual/en/function.mail.php