2017-07-25 69 views
1

我正在使用laravel /流明。我可以在我的存儲目錄中使用Storage::disk("local")->put();保存文件。但是現在我想將幾個文件附加到電子郵件,然後發送,這與作業完成我的錯誤是從本地存儲添加電子郵件附件

lumen.ERROR: exception 'Swift_IoException' with message 'Unable to open file for reading

現在我讀一些關於這點我嘗試但根本沒符號鏈接改變結果,我仍然無法將我的存儲文件夾中的文件附加到我的電子郵件中。

這是我的目錄結構:

/家庭/ XXXXXX /:

-example.app

--storage

---應用

----大衆

-public_html

--example.app

---存儲

附加像這樣的文件:當你通過

foreach ($params["attachments"] as $attachment) { 
    $mail->attach($attachment["file"], [ 
     'as' => $attachment["name"], 
     'mime' => $attachment["mime"] 
    ]); 
} 
+0

你如何附加文件? – Samsquanch

+0

編輯我的帖子。 – user3718908

+0

什麼是'$ params [「附件」]?他們是否來自一個表格? – Samsquanch

回答

0

好了,所以顯然是迅速的郵件失敗一個完整的URL而不是文件的真實路徑。不知道這一點,不知道這是一個錯誤還是設計完成。

0

您已經意識到attach()方法需要該文件的完整路徑。然而,其他人可能會發現有用的知道如何實現這一點。因此,如果您使用本地商店的默認設置,則可以通過撥打storage_path()幫手獲取完整路徑。這樣:

/* 
* This will return the full path to the file: 
* 
* /path/to/laravel/storage/app/attachment/path 
*/ 
storage_path('app/' . $attachment['file']);