Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 用流明发送邮件_Php_Laravel_Email_Lumen - Fatal编程技术网

Php 用流明发送邮件

Php 用流明发送邮件,php,laravel,email,lumen,Php,Laravel,Email,Lumen,我已经阅读了很多关于如何使用Lumen发送邮件的指南和问答。我试过很多这样的建议 但是,我仍然会遇到以下错误: (1/1) FatalThrowableError Type error: Too few arguments to function Illuminate\Support\Manager::createDriver(), 0 passed in /var/www/monitor/vendor/illuminate/support/Manager.php on line 88 and

我已经阅读了很多关于如何使用Lumen发送邮件的指南和问答。我试过很多这样的建议

但是,我仍然会遇到以下错误:

(1/1) FatalThrowableError
Type error: Too few arguments to function Illuminate\Support\Manager::createDriver(), 0 passed in /var/www/monitor/vendor/illuminate/support/Manager.php on line 88 and exactly 1 expected
完整堆栈跟踪

这是我的控制器:

use Illuminate\Support\Facades\Mail;

public function check() {
    $response = $this->getResponse();
    if ($response) {
        if ($this->isAlive($response->state)) {
            $user = new \stdClass();
            $user->email = '****@gmail.com';
            $user->name = 'Albert';
            Mail::raw('test', function($mail) use ($user) {
                $mail->to($user->email, $user->name)->subject('Test Subject');
            });
            // I've also tried Mail::send() but no luck
            echo 'System is fine';
        } else {
            echo 'System has issues';
        }
    } else {
        echo 'Error connecting';
    }
}
我已取消注释并将以下行添加到我的
bootstrap/app.php

$app->withFacades();
$app->register(App\Providers\AppServiceProvider::class);
$app->register(Illuminate\Mail\MailServiceProvider::class);
我的
.env
文件中有以下内容:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=mygmailaddress@gmail.com
MAIL_PASSWORD=mygmailpassword
MAIL_ENCRYPTION=tls

我遗漏了什么吗?

问题是邮件管理器取决于邮件配置,Lumen从5.1开始默认不包含邮件配置。如果使用Lumen>5.1,则需要添加自己的邮件配置文件,并更新引导文件以加载配置文件

首先,在
app
目录旁边创建一个
config
目录

接下来,在新的
config
目录中添加一个
mail.php
文件。您可以复制与您使用的Lumen版本相匹配的默认Laravel安装的内容(例如,如果您使用的是Lumen 5.4,只需从Laravel 5.4复制
mail.php
config文件即可)

最后,在
bootstrap/app.php
文件中,加载配置文件:

$app->configure('mail');

为了安全起见,我会在注册邮件服务提供商之前写上这一行。

问题是邮件管理器取决于邮件配置,而Lumen自5.1版起默认不包含邮件配置。如果使用Lumen>5.1,则需要添加自己的邮件配置文件,并更新引导文件以加载配置文件

首先,在
app
目录旁边创建一个
config
目录

接下来,在新的
config
目录中添加一个
mail.php
文件。您可以复制与您使用的Lumen版本相匹配的默认Laravel安装的内容(例如,如果您使用的是Lumen 5.4,只需从Laravel 5.4复制
mail.php
config文件即可)

最后,在
bootstrap/app.php
文件中,加载配置文件:

$app->configure('mail');

为了安全起见,在您注册您的邮件服务提供商之前,我会写上这句话。

您在第88行有哪些陈述您在第88行有哪些陈述这就解决了问题。我现在得到一个超时错误,但至少我们比以前更远了。谢谢帕特里克斯!这就解决了问题。我现在得到一个超时错误,但至少我们比以前更远了。谢谢帕特里克斯!