Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File Laravel文件与存储外观_File_Laravel_Storage_Facade - Fatal编程技术网

File Laravel文件与存储外观

File Laravel文件与存储外观,file,laravel,storage,facade,File,Laravel,Storage,Facade,文件和laravel 5.2中的正面之间有什么区别吗? 似乎他们都使用相同的合同。我在laravel文档中没有看到文件的文档。 如果它们不同,如何相互作用?文件是PHP函数(如File_exists()等)的一个非常简单的包装器。存储“得益于Frank de Jonge出色的Flysystem PHP包,是一个强大的文件系统抽象”。这可用于处理本地文件(即Storage::disk('local')->exists('path')) 在Laravel 5之前,Laravel没有系统集成。当时,文

文件
和laravel 5.2中的正面之间有什么区别吗?
似乎他们都使用相同的合同。我在laravel文档中没有看到
文件的文档。

如果它们不同,如何相互作用?

文件是PHP函数(如File_exists()等)的一个非常简单的包装器。存储“得益于Frank de Jonge出色的Flysystem PHP包,是一个强大的文件系统抽象”。这可用于处理本地文件(即
Storage::disk('local')->exists('path')


在Laravel 5之前,Laravel没有系统集成。当时,文件外观是与(本地文件)交互的“方式”。我猜删除文件的文档是为了让用户使用存储。但文件系统确实可以工作。

文件外观只包含一些仅适用于绝对路径或相对于脚本的基本方法:

  • \File::makeDirectory('/home/www/myProject/storage/app/uploads/14214')
  • \File::copy('/home/www/myProject/storage/app/uploads/14214/test.json','/home/www/myProject/storage/app/uploads/9999/test.json')

存储外观包含一组复杂的方法,是其他第三方工具的包装器

第一个优点是,您可以使用文件夹的相对路径:

  • Storage::makeDirectory('uploads/14214')
  • Storage::copy('uploads/14214/test.json','uploads/9999/test.json')
您可以在
config/filesystems.php
中更改默认文件夹
/storage/app
,或者创建其他磁盘,您可以使用
storage::disk('specialxyz')->copy(…)
调用这些磁盘

您还可以将
原始文件内容
保存到如下文件中:

  • Storage::put('file.jpg',$contents)
我最喜欢的是,上传用户文件非常容易

$path = Storage::putFile('avatars', $request->file('avatar')); 

默认情况下,store方法将生成一个唯一的ID作为 文件名。文件的扩展名将通过检查 文件的MIME类型。存储将返回文件的路径 方法,以便存储路径,包括生成的文件名, 在您的数据库中


谢谢。你是说根本不需要
文件
门面?
存储
可以完成所有工作吗?在文档示例中,taylor使用了
file\u get\u contents()
,尽管他可以使用
file::get()
。也许
file
会被弃用。
 $path = $request->file('avatar')->store('avatars');