以gmail寄信為例(需先下載phpmailer以及安裝openssl的php擴充套件)

也可以透過 composer 安裝

composer install phpmailer
require_once('vendor/autoload.php');
function mail_sent()
{
	$mail= new PHPMailer(); // 建立新物件
	
	/*SMTP設定*/
	$mail->isSMTP(); // 設定使用SMTP方式寄信
	$mail->SMTPAuth = true; //需要SMTP驗證
	$mail->SMTPDebug  = 2; // 如果有需要可以開啟SMTPDebug模式,可以看到所有連線資訊
	$mail->SMTPSecure = 'tls'; // 使用TLS連線
	$mail->Host = 'smtp.gmail.com'; //Gamil的SMTP主機
	$mail->Port = 587;  // Gamil的SMTP主機的SMTP埠位為587埠。
	$mail->Timeout = 30;// Timeout 30秒
	
	/*信件設定*/
	$mail->CharSet = 'utf8'; // 設定郵件編碼
	$mail->Username = 'gmail_accout'; // 設定驗證帳號
	$mail->Password = 'gmail_password'; // 設定驗證密碼
	$mail->FromName = '佛祖球球'; // 設定寄件者姓名
	$mail->Subject = '嗨~我是佛祖球球'; // 設定郵件標題
	$mail->Body = '好久不見'; // 設定郵件內容
	$mail->IsHTML(true); // 設定郵件內容為HTML
	
	/*寄信*/
	$mail->AddAddress('xxx@gmail.com', '小明'); // 設定收件者郵件及名稱
	$mail->AddAddress('xxx@gmail.com', '小華'); // 可以有多個收件者
	$mail->AddCC('xxx@gmail.com', '小華'); // 副本
	$mail->AddBCC('xxx@gmail.com', '小華'); // 密件副本
	$mail->AddAttachment('path/filename'); // 新增附件
	
	if(!$mail->Send()) {
		return "Mailer Error: " . $mail->ErrorInfo;
	}
	else {
		return "信件已經寄出";
	}
}

執行

echo mail_sent();
Categories: PHP