TP6 composer 安装插件 PHP 版本冲突 直接调用 vendor

最近参与的一个项目 测试服 PHP 环境 7.4 生产服 7.3
测试服使用 phpmailer composer 安装 phpmailer 正常
生产服 composer 安装提示PHP版本不对
最后复制了 phpmailer 插件到 生产服 的vendor 内
使用 require_once() 函数直接引入插件文件使用

参考文章: https://www.cnblogs.com/yuzhould/p/13550196.html

use PHPMailer\PHPMailer\PHPMailer;

// require __DIR__ . '/../../vendor/autoload.php';

require_once(__DIR__ . '/../../vendor/phpmailer/phpmailer/src/PHPMailer.php');
require_once(__DIR__ . '/../../vendor/phpmailer/phpmailer/src/SMTP.php');

class EmailService
{
    public function send_email($config,$param)
    {

        # 初始化返回值
        $return_data = [
            'status'=>true,
            'msg'=>"ok",
            'data'=>[]
        ];

        // 引入类
        $mailer = new PHPMailer(true);

        // 开启调试模式
        $mailer->SMTPDebug = 2; // 2 表示详细输出
        $mailer->isSMTP();
        $mailer->Host = $config['email_host'];
        $mailer->CharSet = "utf-8";
        $mailer->SMTPAuth = true;
        $mailer->Username = $config['email_account'];
        $mailer->Password = $config['email_password'];
        $mailer->SMTPSecure = 'ssl'; // 或 'tls'
        $mailer->Port = $config['email_port']; // 或 587

        // 设置邮件内容
        $mailer->setFrom($config['email_account'], $config['email_name']);
        $mailer->addAddress($param['to_email'], $param['to_name']);
        $mailer->addReplyTo($config['email_account'], '回复地址');
        $mailer->isHTML(true);
        $mailer->Subject = $param['subject'];
        $mailer->Body = $param['body'];

        // 发送邮件
        $res = $mailer->send();
        if (!$res) {
            $return_data['status'] = false;
            $return_data['msg'] = $mailer->ErrorInfo;
        }
        $return_data['data'] = $mailer;

        return $return_data;

    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值