php3.2傳送郵件
阿新 • • 發佈:2018-12-07
1.首先下載PHPMailer類,將會看到以下檔案,將圈起來的檔案放到ThinkPHP/Library/Vendor檔案下面
2.在tp3.2框架裡面application下面的Common模組下的Common檔案中建立function.php檔案
裡面的程式碼如下:
<?php
function sendMail($to){
vendor('PHPMailer.class#phpmailer');
vendor('PHPMailer.class#smtp');
$mail = new PHPMailer(); //例項化
$mail-> IsSMTP(); // 啟用SMTP
$mail->Host=C('MAIL_HOST'); //smtp伺服器的名稱(這裡以新浪郵箱為例)
$mail->SMTPAuth = C('MAIL_SMTPAUTH'); //啟用smtp認證
$mail->Username = C('MAIL_USERNAME'); //發件人郵箱名,從config.php中獲得
$mail->Password = C('MAIL_PASSWORD') ; //發件人郵箱密碼
$mail->From = C('MAIL_FROM'); //發件人地址(也就是你的郵箱地址)
$mail->FromName = C('MAIL_FROMNAME'); //發件人姓名
$mail->AddAddress($to,"尊敬的顧客");
$mail->WordWrap = 50; //設定每行字元長度
$mail->Port = 25;
$mail->IsHTML(C('MAIL_ISHTML')); // 是否HTML格式郵件
$mail->CharSet=C('MAIL_CHARSET'); //設定郵件編碼
$mail->Subject ='郵件主題'; //郵件主題
$mail-> Body = '郵件本身的內容!'; //郵件內容
$mail->AltBody = "這是一個純文字的身體在非營利的HTML電子郵件客戶端"; //郵件正文不支援HTML的備用顯示
$result = $mail->Send();
return $result;
}
?>
3.在application下面的Common模組下的Conf檔案裡面的config.php裡面進行如下配置:
<?php
return array(
'MAIL_HOST' =>'smtp.qq.com',//smtp伺服器的名稱,這裡用的是新浪郵箱,qq: smtp.qq.com , 163:smtp.163.com
'MAIL_SMTPAUTH' =>TRUE, //啟用smtp認證
'MAIL_USERNAME' =>'[email protected]',//發件人郵箱名,注意換成你註冊的新浪郵箱地址
'MAIL_FROM' =>'[email protected]',//發件人郵箱地址,注意換成你註冊的新浪郵箱地址
'MAIL_FROMNAME'=>'Sun',//發件人姓名
'MAIL_PASSWORD' =>'eygtxqhwzmuecbba',//密碼,請填上發件人郵箱密碼
'MAIL_CHARSET' =>'utf-8',//設定郵件編碼
'MAIL_ISHTML' =>TRUE, // 是否HTML格式郵件
);
?>
4.在Home模組下的Controller底下的IndexController控制器中寫如下程式碼:
public function sendMail(){
$email = '[email protected]'; //收件人郵箱地址
$res=sendMail($email);
if($res){
echo "成功";
}else{
echo "失敗";
}
}
5.在瀏覽器中呼叫方法,http://127.0.0.1/index.php/Home/Index/sendMail
如果傳送成功,即在瀏覽器中列印成功,傳送失敗,即列印失敗