文件系统
// 获取硬盘实例
Storage::put('avatars/1', $fileContents);
Storage::disk('s3')->put('avatars/1', $fileContents);
// 获取文件
$contents = Storage::get('file.jpg');
$exists = Storage::disk('s3')->exists('file.jpg');
(文件 URL)
$url = Storage::url('file1.jpg');
* 临时 URL
$url = Storage::temporaryUrl(
'file1.jpg', now()->addMinutes(5)
);
(文件元信息)
$size = Storage::size('file1.jpg');
$time = Storage::lastModified('file1.jpg');
// 存储文件
Storage::put('file.jpg', $contents);
Storage::put('file.jpg', $resource);
(自动文件流)
// 自动计算文件名的MD5值...
Storage::putFile('photos', new File('/path/to/photo'));
// 手动指定文件名...
Storage::putFileAs('photos', new File('/path/to/photo'), 'photo.jpg');
(添加内容到文件开头/结尾)
Storage::prepend('file.log', 'Prepended Text');
Storage::append('file.log', 'Appended Text');
(拷贝 & 移动文件)
Storage::copy('old/file1.jpg', 'new/file1.jpg');
Storage::move('old/file1.jpg', 'new/file1.jpg');
// 文件上传
$path = $request->file('avatar')->store('avatars');
$path = Storage::putFile('avatars', $request->file('avatar'));
(指定文件名)
$path = $request->file('avatar')->storeAs(
'avatars', $request->user()->id
);
$path = Storage::putFileAs(
'avatars', $request->file('avatar'), $request->user()->id
);
(指定磁盘)
$path = $request->file('avatar')->store(
'avatars/'.$request->user()->id, 's3'
);
// 删除文件
Storage::delete('file.jpg');
Storage::delete(['file1.jpg', 'file2.jpg']);
Storage::disk('s3')->delete('folder_path/file_name.jpg');
// 目录
(获取一个目录下的所有文件)
$files = Storage::files($directory);
$files = Storage::allFiles($directory);
(获取一个目录下的所有子目录)
$directories = Storage::directories($directory);
// 递归...
$directories = Storage::allDirectories($directory);
(创建目录)
Storage::makeDirectory($directory);
(删除目录)
Storage::deleteDirectory($directory);