首先,我将文件保存在公用文件夹中,然后我想向管理员发送一封带有该文件的电子邮件。
public function upload(Request $request){
if($file = $request->file('pre_qualification')){
$name = $file->getClientOriginalName();
$file->move('submissions', $name);
$form = Form::create([
'pre_qualification'=> $name,
'user_id' => Auth::id()
]);
$today=date("Y-m-d H:i:s",strtotime(date("Y-m-d H:i:s")." +2 minutes"));
Mail::later($today,new PreQualificationNotification($form));
return redirect()->route('buyer.dashboard');
}
}
然后这在我的Mailable课堂中:
public function __construct($form)
{
$this->form = $form;
$this->to('esp.sousa@gmail.com', $this->form->user->name);
$this->subject('See attached new pre-qualification form submitted');
}
public function build()
{
return $this->view('emails.PreQualification')
->attach(public_path('/submissions/pre-qualification.pdf'));
}
提交后,文件进入公用文件夹,但是当我查看页面时,看到执行时间错误:
Maximum execution time of 30 seconds exceeded
使用更高版本的功能的想法正是为了避免这种情况。那么,如何将电子邮件发送给管理员,并附加上载的文件?
答案 0 :(得分:1)
尝试将php.ini中的max_execution_time = 30更改为更大的值。 或者最好在脚本中使用max_execution_time(int $ seconds)。
答案 1 :(得分:0)
您应该尝试这个
set_time_limit( int $seconds );