【发布时间】:2020-09-17 10:33:24
【问题描述】:
首先要解释一下我的问题是什么意思,当我将文件上传到本地存储时,我会通过以下方式保存它们:
$files = $request->file('files');
if ($request->hasFile('files')) {
foreach ($files as $file) {
//Get filename with the extension
$fileNameWithExt = $file->getClientOriginalName();
//Filename to store example: lead_4_document.pdf
$fileNameToStore = 'lead_' . $lead->id . '_' . $fileNameWithExt;
//Upload image
$path = $file->storeAs('/user_uploads', $fileNameToStore);
$lead->uploadFile()->create(array('filename' => $fileNameToStore, 'file_url' => $path, 'lead_id' => $lead->id));
}
}
所以基本上我将lead_ 前缀id 和另一个_ 添加到上传期间最初调用的文件中。我现在面临的问题是我需要根据我的潜在客户 ID 检索关联的文件。到目前为止,这是我的尝试:
$searchParam = 'lead_'.$lead->id.'_';
//$fileNames = File::glob('storage/user_uploads/'.$searchParam.'*');
//$files = File::get($fileNames);
$allFiles = Storage::files('user_uploads');
dd($allFiles);
澄清一下,'File::glob' 方式似乎有效,尽管它只输出文件名而不是实际文件作为对象,这正是我所需要的。
【问题讨论】:
标签: php laravel download upload