郵件發放pos機

 新聞資訊2  |   2023-07-11 09:37  |  投稿人:pos機之家

網上有很多關于郵件發放pos機,php下如何簡單快捷的實現郵件發送的知識,也有很多人為大家解答關于郵件發放pos機的問題,今天pos機之家(www.tonybus.com)為大家整理了關于這方面的知識,讓我們一起來看下吧!

本文目錄一覽:

1、郵件發放pos機

郵件發放pos機

對于程序員來說,項目中郵件發送是常用的一個功能, 我在這不講源碼,只講如何能快速地實現.

phpMailer 是一個非常強大的 php發送郵件類,可以設定發送郵件地址、回復地址、郵件主題、html網頁,上傳附件,并且使用起來非常方便。

phpMailer 的特點:

1、在郵件中包含多個 TO、CC、BCC 和 REPLY-TO。2、平臺應用廣泛,支持的 SMTP 服務器包括 Sendmail、qmail、Postfix、Gmail、Imail、Exchange 等等。3、支持嵌入圖像,附件,HTML 郵件。4、可靠的強大的調試功能。5、支持 SMTP 認證。6、自定義郵件頭。7、支持 8bit、base64、binary 和 quoted-printable 編碼。

phpmailer 安裝或者下載方式:

從 github 上下載: https://github.com/PHPMailer/PHPMailer/

就這三個文件

大家實在下載不來的可以直接找我要,沒關系的

php開啟socket和openssl擴展,這種錯誤到時候解決就行

到這一步,我們就可以把這個壓縮包解壓到我們的項目中了,對于php來講,如果我們用了框架,比如think PHP, 那我們把他放到extend目錄下,如下圖:

think PHP

調用時用如下:

如果沒用框架,那就放到公共的三方引用目錄里面或直接就放到你當前php文件的同級目錄下,沒什么關系,引用路徑寫對就行,如下圖:

調用時如下:

到這一步相信大家都沒什么問題,下面重點談談代碼層面的問題:

發送之前需要擁有自己的郵件服務器,測試的時候其實用自己申請的免費郵箱最方便了,不需要自己再搭建服務器了,可能要配置郵箱的SMTP服務,大部分公共郵箱(163、qq等)為了安全默認是關閉的。

網易郵箱配置如下圖:

QQ 郵箱相關配置如下圖:

我們調試的時候一般都是用免費的郵件服務器,QQ或163, 用QQ 郵箱時,大家容易忽略一個問題,那就是QQ郵箱走465端口,ssl協議,所以我們如下配置:

注意一點, 密碼為單獨的授權碼,不是你的郵箱密碼,有人卡在這了,哈哈

如果用別的郵箱,可以走25端口,但這有一點特別坑,就是阿里云默認25端口是關的,所以沒辦法,要么不用25端口,要么就是向阿里云申請25端口,要么就是換服務器供應商,如IDC等等,

用25端口就不用ssl協議了,

具體代碼就是這一條寫不寫的區別.

還有就是同時發送多人和多張附件的問題:

發送多人,處理參數,循環

發送附件,處理參數,循環

實在是沒什么好說的,就是附件路徑要直接指向你的二進制文件,相對路徑和絕對路徑都行,但不是網圖鏈接或三方圖片服務器鏈接,比如七牛云和阿里云oss,這種只能先下載到本地或服務器才行,注意個別下載授權問題,你懂的

到這一步差不多了,直接放代碼:

/**

* 發送郵件(重構/支持附件)

*/

//參數有接收郵箱,可單人,可多人, 字符串和數組都行,看你

//主題,這不用多說

//內容, 可html,自動識別

//附件,上面已經說過注意事項

//三方包里面不用做任何修改

public static function send_email($sendTo, $titleName, $content, $file_list = []) {

$email = array(

\'charset\' => \'UTF-8\', //字符編碼

\'host\' => \'smtp.leju.com\', //企業郵局域名

\'port\' => 25, //端口

\'username\' => \'\', //郵件發送人

\'password\' => \'\', //密碼

);

require_once \'Phpmailer/phpmailer.php\';

$mail = new PHPMailer(); //實例化

//附件

if (!empty($file_list)) {

foreach ($file_list as $key => $value) {

$mail->AddAttachment($value); // 添加附件

}

}

$titleName = $titleName;

// 使用SMTP方式發送

$mail->IsSMTP();

// 設置郵件的字符編碼

$mail->CharSet = $email[\'charset\'];

// 企業郵局域名

$mail->Host = $email[\'host\'];

$mail->Port = $email[\'port\'];

// 啟用SMTP驗證功能

$mail->SMTPAuth = true;

//郵件發送人的用戶名(請填寫完整的email地址)

$mail->Username = $email[\'username\'];

// 郵件發送人的 密碼 (授權碼)

$mail->Password = $email[\'password\']; //修改為自己的授權碼

//郵件發送者email地址

$mail->From = $email[\'username\'];

//發送郵件人的標題

$mail->FromName = \'\';

//做一下處理, 可以多個收件人,也可以一個

//收件人地址,可以替換成任何想要接收郵件的email信箱,格式是AddAddress("收件人email","收件人姓名")

if (!empty($sendTo)) {

$sendTo = explode(",", $sendTo);

foreach ($sendTo as $k => $v) {

$mail->AddAddress($v, substr($v, 0, strpos($v, \'@\')));

}

}

//回復的地址

$mail->AddReplyTo($email[\'username\'], "");

//set email format to HTML //是否使用HTML格式

$mail->IsHTML(true);

//郵件標題

$mail->Subject = $titleName;

//郵件內容

$mail->Body = $content;

//附加信息,可以省略

$mail->AltBody = \'\';

if (!$mail->Send()) {

$mail_return_arr[\'code\'] = false;

$str = "郵件發送失敗.

";

$str .= "錯誤原因: " . $mail->ErrorInfo;

$mail_return_arr[\'info\'] = $str;

} else {

$mail_return_arr[\'code\'] = true;

$str = "郵件發送成功";

$mail_return_arr[\'info\'] = $str;

}

return $mail_return_arr;

}

到這一步,大家可以自己進行測試了,有問題可以留言,一般常見的問題我都可以為大家解答,或發我郵箱lnmp171@163.com

以上就是關于郵件發放pos機,php下如何簡單快捷的實現郵件發送的知識,后面我們會繼續為大家整理關于郵件發放pos機的知識,希望能夠幫助到大家!

轉發請帶上網址:http://www.tonybus.com/newsone/83227.html
上一篇:pos機5.5費率 下一篇:pos機網銷文案

你可能會喜歡:

版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 babsan@163.com 舉報,一經查實,本站將立刻刪除。