這篇文章主要介紹了如何通過CakePHP內(nèi)置模塊發(fā)送郵件,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設、高性價比興隆網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式興隆網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設找我們,業(yè)務覆蓋興隆地區(qū)。費用合理售后完善,10多年實體公司更值得信賴。
通過事先配置模塊,來實現(xiàn)發(fā)送郵件的功能。(此代碼無法根據(jù)用戶輸入信息來更改發(fā)送郵箱)
閱讀者已有CakePHP的基礎(chǔ)知識
CakePHP 3.6.1
PHP 7.4.10
'EmailTransport' => [ 'default' => [ 'className' => 'Smtp', 'host' => 'smtp.gmail.com', 'port' => 587, 'timeout' => 30, 'username' => 'name@gmail.com', 'password' => '12345678', 'tls' => true, 'url' => env('EMAIL_TRANSPORT_DEFAULT_URL', null), ], ], 'Email' => [ 'default' => [ 'transport' => 'default', 'from' => 'name@gamail.com', //'charset' => 'utf-8', //'headerCharset' => 'utf-8', ], ],
去任意Controller.php里,寫發(fā)送郵件的函數(shù)。
*此處有參考stackoverflow
//在最上面加載模塊 use Cake\Mailer\Email; //在任意class下寫郵件發(fā)送的函數(shù) public function send() { $email = new Email('default'); try { $email->setFrom(['name@gmail.com' => 'My Site']) ->setTo('接受者郵箱@126.com') ->setSubject('主題') ->send('本文'); echo "success"; } catch (\Cake\Network\Exception\SocketException $exception) { $lastResponse = $email->transport()->getLastResponse(); var_dump($lastResponse); } }
在
$routes->connect('/send', ['controller' => 'ControllerName', 'action' => 'send']);
訪問,測試
報錯,這是因為gmail的安全防護級別太高了。
登錄到自己的google賬號管理中心->安全性
關(guān)閉兩步驗證
開啟訪問權(quán)限
然后刷新頁面,可以發(fā)現(xiàn)我們已經(jīng)成功通過gmail發(fā)送郵件了。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“如何通過CakePHP內(nèi)置模塊發(fā)送郵件”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學習!