1
0
mirror of https://gitee.com/koogua/course-tencent-cloud.git synced 2025-06-22 03:32:47 +08:00
2020-09-17 21:29:29 +08:00

58 lines
1.2 KiB
PHP

<?php
namespace App\Services;
use Phalcon\Logger\Adapter\File as FileLogger;
use Phalcon\Mailer\Manager as MailerManager;
abstract class Mailer extends Service
{
/**
* @var MailerManager
*/
protected $manager;
/**
* @var FileLogger
*/
protected $logger;
public function __construct()
{
$this->manager = $this->getManager();
$this->logger = $this->getLogger('mail');
}
/**
* 获取 Manager
*/
protected function getManager()
{
$opt = $this->getSettings('mail');
$config = [
'driver' => 'smtp',
'host' => $opt['smtp_host'],
'port' => $opt['smtp_port'],
'from' => [
'email' => $opt['smtp_from_email'],
'name' => $opt['smtp_from_name'],
],
];
if ($opt['smtp_encryption']) {
$config['encryption'] = $opt['smtp_encryption'];
}
if ($opt['smtp_auth_enabled']) {
$config['username'] = $opt['smtp_username'];
$config['password'] = $opt['smtp_password'];
}
return new MailerManager($config);
}
}