php自動發送qq郵件功能實現的範例
本文跟大家分享以qq信箱為例給大家介紹PHP實作自動傳送郵件功能代碼,有興趣的朋友參考下吧
最近做一個信箱驗證的功能,研究了一會,搞定了郵件的自動發送。下面用qq郵箱作為演示,一步一步來解釋:
代碼下載地址
首先,就是做到郵件的發送,代碼如下:
<?PHP //邮件发送 require './mailer/class.phpmailer.php'; require './mailer/class.smtp.php'; date_default_timezone_set('PRC');//设置邮件发送的时间,如果不设置,则会显示其他区的时间 $mail = new PHPMailer(); //是否启用smtp的debug进行调试 开发环境建议开启 生产环境注释掉即可 默认关闭debug调试模式 $mail->SMTPDebug = 3; //使用smtp鉴权方式发送邮件,当然你可以选择pop方式 sendmail方式等 本文不做详解 //可以参考http://phpmailer.github.io/PHPMailer/当中的详细介绍 $mail->isSMTP(); //smtp需要鉴权 这个必须是true $mail->SMTPAuth=true; //链接qq域名邮箱的服务器地址 $mail->Host = 'smtp.qq.com'; //设置使用ssl加密方式登录鉴权 $mail->SMTPSecure = 'ssl'; //设置ssl连接smtp服务器的远程服务器端口号 可选465或587 $mail->Port = 465; //设置发件人的主机域 可有可无 默认为localhost 内容任意,建议使用你的域名,这里为默认localhost $mail->Hostname = 'localhost'; //设置发送的邮件的编码 可选GB2312 $mail->CharSet = 'UTF-8'; //设置发件人姓名(昵称)可为任意内容,不影响回复(设置为qq昵称即可) $mail->FromName = 'XXXX'; //smtp登录的账号 这里填入qq号即可 $mail->Username ='发送者的QQ号'; //smtp登录的密码 这里填入“独立密码” 若为设置“独立密码”则填入登录qq的密码 建议设置“独立密码” $mail->Password = 'QQ邮箱的登录密码'; //设置发件人邮箱地址 这里填入上述提到的“发件人邮箱” $mail->From = '发送者的QQ邮箱'; //邮件正文是否以html方式发送 $mail->isHTML(true); //设置收件人邮箱地址 该方法有两个参数 第一个参数为收件人邮箱地址 第二参数为给该地址设置的昵称 不同的邮箱系统会自动进行处理变动 这里第二个参数的意义不大 $mail->addAddress('收件人的QQ邮箱地址','QQ昵称'); //可添加多个收件人 //$mail->addAddress('XXXX@qq.com','XXXXX'); //添加该邮件的主题 $mail->Subject = '这是一个PHPMailer发送邮件的示例'; //添加邮件正文 $mail->Body = "这是一个<b style=\"color:red;\">PHPMailer</b>发送邮件的一个测试用例"; //为该邮件添加附件 该方法也有两个参数 第一个参数为附件存放的目录(相对目录、或绝对目录均可) //第二参数为在邮件附件中该附件的名称 $mail->addAttachment('./src/20151002.png','test.png'); //同样该方法可以多次调用 上传多个附件 //$mail->addAttachment('./Jlib-1.1.0.js','Jlib.js'); //发送命令 返回布尔值 //PS:经过测试,要是收件人不存在.若不出现错误依然返回true也就是说在发送之前 //自己需要些方法实现检测该邮箱是否真实有效 $status = $mail->send(); //简单的判断与提示信息 if($status) { echo '发送邮件成功'.date('Y-m-d H:i:s');; } else { echo '发送邮件失败,错误信息未:'.$mail->ErrorInfo; } ?>
這樣就可以實現郵件的發送了。結果如下:
如果要實現自動發送郵件的話,那麼程式必須能自動的運作。程式在背景自動執行的程式碼如下:
<?php ignore_user_abort(); // 后台运行 set_time_limit(0); // 取消脚本运行时间的超时上限 $interval=60*30;// 每隔半小时运行,这个间隔时间是可以随着 需要进行修改 do{ XXXXX //这里是你要执行的代码 sleep($interval); // 休眠半小时 }while(true); ?>
將發送郵件的程式碼和自動執行的程式碼結合起來,就可以實作郵件的自動傳送:
<?php //邮件发送 require './mailer/class.phpmailer.php'; require './mailer/class.smtp.php'; date_default_timezone_set('PRC'); ignore_user_abort();//后台运行 set_time_limit(0);//取消脚本运行时间的超时上限 $interval = 60*1;//每隔一分钟运行一次(这个可以根据需要来进行调整) do{ $mail = new PHPMailer(); $mail->SMTPDebug = 3; $mail->isSMTP(); $mail->SMTPAuth=true; $mail->Host = 'smtp.qq.com'; $mail->SMTPSecure = 'ssl'; $mail->Port = 465; $mail->Hostname = 'localhost'; $mail->CharSet = 'UTF-8'; $mail->FromName = 'XXXX'; $mail->Username ='发送者的QQ号'; $mail->Password = 'QQ邮箱的登录密码'; $mail->From = '发送者的QQ邮箱'; $mail->isHTML(true); $mail->addAddress('收件人的QQ邮箱地址','QQ昵称'); //$mail->addAddress('XXXX@qq.com','XXXXX'); $mail->Subject = '这是一个PHPMailer发送邮件的示例'; $mail->Body = "这是一个<b style=\"color:red;\">PHPMailer</b>发送邮件的一个测试用例"; $mail->addAttachment('./src/20151002.png','test.png'); //$mail->addAttachment('./Jlib-1.1.0.js','Jlib.js'); $status = $mail->send(); if($status) { echo '发送邮件成功'.date('Y-m-d H:i:s');; } else { echo '发送邮件失败,错误信息未:'.$mail->ErrorInfo; } sleep($interval);//休眠1minute }while(true); ?>
程式運行結果為:
#要去掉上面這些訊息,
只保留「傳送成功等訊息」
需要在這個檔案修改:class.smtp.PHP
#最後得到結果顯示如下:
這樣就實現了郵件的自動發送。當然,根據以上程式碼,也可以實現郵件的定時發送。
總結
#以上是php自動發送qq郵件功能實現的範例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

PHP適合web開發,特別是在快速開發和處理動態內容方面表現出色,但不擅長數據科學和企業級應用。與Python相比,PHP在web開發中更具優勢,但在數據科學領域不如Python;與Java相比,PHP在企業級應用中表現較差,但在web開發中更靈活;與JavaScript相比,PHP在後端開發中更簡潔,但在前端開發中不如JavaScript。

PHP和Python各有優劣,選擇取決於項目需求和個人偏好。 1.PHP適合快速開發和維護大型Web應用。 2.Python在數據科學和機器學習領域佔據主導地位。
