Php Laravel-获取存储磁盘路径

Php Laravel-获取存储磁盘路径,php,laravel,Php,Laravel,我已经为公共上传创建了一个新的存储磁盘。我是这样使用它的: Storage::disk('uploads')->get(...); 但是我正在试图找到一种方法来获取磁盘本身的路径,我花了相当长的时间在框架文件之间寻找,但是找不到我要找的东西。我想在这样的场景中使用它: $icon = $request->file('icon')->store('icons', 'uploads'); Image::make(Storage::disk('uploads')->path(

我已经为公共上传创建了一个新的存储磁盘。我是这样使用它的:

Storage::disk('uploads')->get(...);
但是我正在试图找到一种方法来获取磁盘本身的路径,我花了相当长的时间在框架文件之间寻找,但是找不到我要找的东西。我想在这样的场景中使用它:

$icon = $request->file('icon')->store('icons', 'uploads');
Image::make(Storage::disk('uploads')->path($icon))->resize(...)->save();

那么,如何获取存储磁盘的路径呢?

经过额外的搜索,我发现我可以使用以下方法:

$path = Storage::disk('uploads')->getAdapter()->getPathPrefix();

但是,这里不是给定了“->path()”方法吗

现在框架中有一些助手函数,可以很容易地获取应用程序中的一些常用路径

例如,如果您想访问公用文件夹中的文件,可以执行以下操作

$image\u file\u path=公共路径(“images/my\u image.jpg”)

这将返回应用程序中公用/图像文件夹下的文件的本地路径。

有一个函数用于此操作

Storage::disk('uploads')->path('/');


看起来这是从5.4开始的!我从未注意到…

我们也可以直接从configuration helper访问磁盘存储路径:

config('filesystems.disks');

可能重复我想知道你在哪里找到代码??没有写在文档中,对吗?我认为它来自Flysystem Package这应该是正确的答案,因为其他版本要求您使用接口上没有的函数。对我来说,当我的根定义为存储路径(“位置”)时,这个附加的“/”将生成一个双斜杠。它生成了路径/到/位置/。仅使用空字符串“”作为参数,它生成了一个带有单斜杠的路径。这是别人的经历吗?