我上传一个文件在我的控制器中,我这样做了$file = Input::file('file');dd($file);我看到这个Illuminate\Http\UploadedFile {#1388 ▼ -test: false -originalName: "config-nsd-got.yaml" -mimeType: "application/x-yaml" -error: 0 #hashName: null path: "/private/var/tmp" filename: "phpb73hcy" basename: "phpb73hcy" pathname: "/private/var/tmp/phpb73hcy" <<<<<<---------- I WANT TO ACCESS THIS extension: "" realPath: false writable: false readable: false executable: false file: false dir: false link: false}我想要pathname: "/private/var/tmp/phpb73hcy",我试过了dd($file->pathname());dd($file["pathname"]);我只想要这个/private/var/tmp/phpb73hcy对我有什么提示吗?
2 回答
吃鸡游戏
TA贡献1829条经验 获得超7个赞
使用$this->getPathname()
。
LaravelUploadedFile
类扩展了 SymfonyUploadedFile
类,Symfony 类又扩展了 SymfonyFile
类,而 Symfony 类又扩展了 PHPSplFileInfo
类。后者有getPathname()
方法。
呼啦一阵风
TA贡献1802条经验 获得超6个赞
来自 Matt Stauffer 的书Laravel Up and Running:
每个上传的文件都是该类的后代
SplFileInfo
,该类提供了一个getRealPath()
返回文件位置路径的方法。
$path = $file->getRealPath(); dd($path);
- 2 回答
- 0 关注
- 94 浏览
添加回答
举报
0/150
提交
取消