ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
可以用 Storage facade 操作所有写在配置文件里的硬盘。或者是,你也可以将 Illuminate\Contracts\Filesystem\Factory 类型提示写到任何类里,经由 Laravel 的 服务容器 解析。 ## 取得一个特定硬盘 ~~~ $disk = Storage::disk('s3'); $disk = Storage::disk('local'); ~~~ ## 确认文件是否存在 `$exists = Storage::disk('s3')->exists('file.jpg');` ## 使用默认硬盘调用方法 ~~~ if (Storage::exists('file.jpg')) { // } ~~~ ## 取得文件内容 `$contents = Storage::get('file.jpg');` ## 配置文件内容 `Storage::put('file.jpg', $contents);` ## 加入内容到文件开头 `Storage::prepend('file.log', 'Prepended Text');` ## 附加内容到文件结尾 `Storage::append('file.log', 'Appended Text');` ## 删除文件 ~~~ Storage::delete('file.jpg'); Storage::delete(['file1.jpg', 'file2.jpg']); ~~~ ## 复制文件到新的路径 `Storage::copy('old/file1.jpg', 'new/file1.jpg');` ## 移动文件到新的路径 `Storage::move('old/file1.jpg', 'new/file1.jpg');` ## 取得文件大小 `$size = Storage::size('file1.jpg');` ## 取得最近修改时间 (UNIX) `$time = Storage::lastModified('file1.jpg');` ## 取得目录下所有文件 ~~~ $files = Storage::files($directory); // Recursive... $files = Storage::allFiles($directory); ~~~ ## 取得目录下所有子目录 ~~~ $directories = Storage::directories($directory); // Recursive... $directories = Storage::allDirectories($directory); ~~~ ## 建立目录 `Storage::makeDirectory($directory);` ## 删除目录 `Storage::deleteDirectory($directory);`