Latest web development tutorials

PHP 郵件

PHP 允許您從腳本直接發送電子郵件。


PHP mail() 函數

PHP mail() 函數用於從腳本中發送電子郵件。

語法

mail(to,subject,message,headers,parameters)

参数 描述
to 必需。规定 email 接收者。
subject 必需。规定 email 的主题。注释:该参数不能包含任何新行字符。
message 必需。定义要发送的消息。应使用 LF (\n) 来分隔各行。每行应该限制在 70 个字符内。
headers 可选。规定附加的标题,比如 From、Cc 和 Bcc。应当使用 CRLF (\r\n) 分隔附加的标题。
parameters 可选。对邮件发送程序规定额外的参数。

註釋: PHP運行郵件函數需要一個已安裝且正在運行的郵件系統(如:sendmail、postfix、qmail等)。所用的程序通過在php.ini 文件中的配置設置進行定義。 請在我們的PHP Mail參考手冊閱讀更多內容。


PHP 簡易E-Mail

通過PHP 發送電子郵件的最簡單的方式是發送一封文本email。

在下面的實例中,我們首先聲明變量($to, $subject, $message, $from, $headers),然後我們在mail() 函數中使用這些變量來發送了一封E-mail:

<?php
$to = "[email protected]";         // 邮件接收者
$subject = "参数邮件";                // 邮件标题
$message = "Hello! 这是邮件的内容。";  // 邮件正文
$from = "[email protected]";   // 邮件发送者
$headers = "From:" . $from;         // 头部信息设置
mail($to,$subject,$message,$headers);
echo "邮件已发送";
?>


PHP Mail 表單

通過PHP,您能夠在自己的站點製作一個反饋表單。 下面的實例向指定的e-mail 地址發送了一條文本消息:

<html>
<head>
<meta charset="utf-8">
<title>本教程(w3big.com)</title>
</head>
<body>

<?php
if (isset($_REQUEST['email'])) { // 如果接收到邮箱参数则发送邮件
	// 发送邮件
	$email = $_REQUEST['email'] ;
	$subject = $_REQUEST['subject'] ;
	$message = $_REQUEST['message'] ;
	mail("[email protected]", $subject,
	$message, "From:" . $email);
	echo "邮件发送成功";
} else { // 如果没有邮箱参数则显示表单
	echo "<form method='post' action='mailform.php'>
	Email: <input name='email' type='text'><br>
	Subject: <input name='subject' type='text'><br>
	Message:<br>
	<textarea name='message' rows='15' cols='40'>
	</textarea><br>
	<input type='submit'>
	</form>";
}
?>

</body>
</html>

實例解釋:
  • 首先,檢查是否填寫了郵件輸入框
  • 如果未填寫(比如在頁面被首次訪問時),輸出HTML 表單
  • 如果已填寫(在表單被填寫後),從表單發送電子郵件
  • 當填寫完表單點擊提交按鈕後,頁面重新載入,可以看到郵件輸入被重置,同時顯示郵件發送成功的消息

註釋:這個簡易發送e-mail不安全,在本教程的下一章中,您將閱讀到更多關於電子郵件腳本中的安全隱患,我們將為您講解如何驗證用戶輸入使它更安全。


PHP Mail 參考手冊

如需查看更多關於PHP mail()函數的信息,請訪問我們的PHP Mail參考手冊