3

我正在使用 Laravel 的可邮寄类发送电子邮件。如果文件存在,我想附加文件。所以我只想在文件存在的情况下添加附加参数。我可以使用 if/else 子句,但我有不同的文件,这不干净。在这种情况下,一个attachIfNotNull函数(不存在)会有所帮助,但也许还有其他干净的解决方案..

    public function build()
    {
        return $this->view('emails.orders.shipped')
                    ->attach('/path/to/file1', [
                        'as' => 'name.pdf',
                        'mime' => 'application/pdf',
                    ]);
    }
4

1 回答 1

3

您可以使用File::exists()Storage::exists()

$view = $this->view('emails.orders.shipped');
return \File::exists('/path/to/file1') ? $view
     : $view->attach('/path/to/file1', [
         'as' => 'name.pdf',
         'mime' => 'application/pdf',
     ]);
于 2018-01-28T16:55:53.477 回答