我在Laravel 5.1项目中看到了这些Storage::drive()
和Storage::read()
,但我在互联网上找不到这两个信息。
能以某种方式在这里解释或发布这些方法的结构吗?
答案 0 :(得分:1)
Storage
的外观是\Illuminate\Filesystem\FilesystemManager
的意思。
调用Storage::drive()
时,Laravel调用的实例
\Illuminate\Filesystem\FilesystemManager
和drive()
方法在幕后。
但是,read()
方法并不直接存在于FilesystemManager
上。
它存在于另一个类\Illuminate\Contracts\Filesystem\Filesystem
上。
在FilesystemManager
上调用不存在的方法时。 PHP将在__call()
内部使用魔术方法FilesystemManager
。在这种情况下,该调用将调用重定向到Filesystem::drive()
方法。
所以Storage::read()
与$filesystemManager->drive()->read()
大致相同。
您可以在此处找到一些api文档。
https://laravel.com/api/5.6/Illuminate/Filesystem/FilesystemManager.html
https://laravel.com/api/5.6/Illuminate/Filesystem/Filesystem.html
您还可以在此处找到一些Facade文档。
https://laravel.com/docs/5.6/facades
答案 1 :(得分:0)
在Laravel 5.6中,请参见位于以下位置的Filesystem.php: \ vendor \ laravel \ framework \ src \ Illuminate \ Filesystem \ Filesystem.php 在这里可以阅读为Storage Facade添加可用功能的信息。
我建议您不要在Internet上进行搜索,而是先尝试从框架进行搜索和探索。如果您仍然想寻找解决方案,请访问互联网。