Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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 Laravel 5.1邮件文档-混乱?_Php_Email_Laravel - Fatal编程技术网

Php Laravel 5.1邮件文档-混乱?

Php Laravel 5.1邮件文档-混乱?,php,email,laravel,Php,Email,Laravel,我对Laravel5.1还是新手,但我发现文档非常奇怪和混乱 例如,根据Laravel文档,我可以使用Mail facade中的send()方法发送电子邮件 到目前为止,一切顺利。当我转到LaravelAPI并发现Illumb Support Facades邮件时,这种方法不存在吗 我怎样才能理解这个方法需要什么参数,以及它在成功/失败时返回什么?这是因为它使用的是Facade模式 在您的app.phpconfig文件中有一个名为“别名”的部分。该部分中有一行:'Mail'=>illumb\Su

我对Laravel5.1还是新手,但我发现文档非常奇怪和混乱

例如,根据Laravel文档,我可以使用Mail facade中的send()方法发送电子邮件

到目前为止,一切顺利。当我转到LaravelAPI并发现Illumb Support Facades邮件时,这种方法不存在吗


我怎样才能理解这个方法需要什么参数,以及它在成功/失败时返回什么?

这是因为它使用的是Facade模式

在您的
app.php
config文件中有一个名为“别名”的部分。该部分中有一行:
'Mail'=>illumb\Support\Facades\Mail::class,
指向Facade,它返回
服务容器(IoC)
中绑定的
键,该键返回要使用的类/对象

因此,您需要找到创建绑定的位置。绑定是通过方法
App::bind('foo',..)
App::singleton('foo',..)
App::instance('foo',..)创建的

我搜索
'mailer'
并找到创建绑定的文件
lluminate\Mail\MailServiceProvider

$this->app->singleton('mailer', function($app) {
    ...

    // this is the class resolved by the IoC.
    $mailer = new Mailer(
        $app['view'], $app['swift.mailer'], $app['events']
    );

    ...

    return $mailer;
});
如您所见,类
\illighted\Mail\Mailer
服务提供程序中返回,这就是使用名为
邮件的
外观时使用的类

快速发现门面后面的类的方法: 您还可以通过转储类名来快速找到类名:
dd(get_class(Mail::getFacadeRoot())

更多信息
  • 有关服务容器的详细信息:
  • 有关Laravel 5立面的更多信息:
  • 有关立面样式的详细信息:

Facade类基本上是助手类,提供对完成工作的真实类的快速、方便的访问。关于外观的优点有很多争论,但这不是这个问题

如果在facade上调用
getFacadeRoot()
方法,它将为您提供facade指向的对象的实例(例如
Mail::getFacadeRoot()==\illumb\Mail\Mailer

现在您已经知道了实际使用的对象,可以在该对象上查找方法。您在Facade上调用的任何方法都会传递给
getFacadeRoot()
返回的对象。因此,当您调用
Mail::send()
时,实际上是在调用
\illumize\Mail\Mailer::send()
(尽管是非静态的)。

也就是在api文档中查找