我想上傳文件的詳細信息插入到數據庫表,我收到以下錯誤:如何文件的詳細信息保存到數據庫中Laravel 5.1
Fatal error: Call to undefined method Symfony\Component\Finder\SplFileInfo::getClientOriginalName()
我該如何獲得getClientOriginalName()
,在Laravel5中的文件的getClientOriginalName()
和getFilename()
?
以下是我正在使用的代碼。
public function add()
{
$directory = public_path('xml');
$files = File::allFiles($directory);
foreach ($files as $file) {
$entry = new Xmlentry();
$entry->mime = $file->getClientMimeType();
$entry->original_filename = $file->getClientOriginalName();
$entry->filename = $file->getFilename().'.'.$extension;
$entry->save();
}
}
什麼DD($文件)輸出? – avip
它打印'陣列:1 [ 0 => SplFileInfo {#164 -relativePath: 「」 -relativePathname: 「145629930664170.xml」 }' – jaahvicky
我認爲這個問題是,這些方法是'UploadedFile'類的一部分,而不是'SplFileInfo'。但是,你可以使用這樣的東西將一個轉換成另一個:'new Symfony \ Component \ HttpFoundation \ File \ UploadedFile($ files [0] - > getFilename(),$ files [0] - > getPath());'' – avip