在 PHP 程式中用 mail() 寄出郵件,最簡單的用法如下:

<?php
$header = “From:My Name<my_name@mydomain.com>”;
mail($to, $subject, $email_body, $header);
?>

這樣的處理方式,當信件傳送到到 mail server 之後,系統會以預設的電子郵件地址代替(例如 me@localhost )。

因為上列程式碼只有設定郵件標頭的 From 內容,在目前 spam mail 猖獗的時代是不夠完善的。

大多數的 mail server 都會將這類的 mail 直接擋掉或是標記成 spam 而導致收件人收不到 mail 的困擾。

可以將程式碼改成下列內容,增加指定 Return-Path 屬性來解決問題:

<?php
$header = “From:My Name<my_name@mydomain.com>\r\n”;
$header .= “Reply-To: My Name<my_name@mydomain.com>\r\n”;
$header .= “Return-Path: My Name<my_name@mydomain.com>\r\n”;
mail($to, $subject, $email_body, $header);
?>