在 Laravel 5 中访问文件上传属性

我上传一个文件


在我的控制器中,我这样做了


$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


对我有什么提示吗?


九州编程
浏览 43回答 2
2回答

吃鸡游戏

使用$this->getPathname()。LaravelUploadedFile类扩展了 SymfonyUploadedFile类,Symfony 类又扩展了 SymfonyFile类,而 Symfony 类又扩展了 PHPSplFileInfo类。后者有getPathname()方法。

呼啦一阵风

来自 Matt Stauffer 的书Laravel Up and Running:每个上传的文件都是该类的后代SplFileInfo,该类提供了一个getRealPath()返回文件位置路径的方法。$path = $file->getRealPath(); dd($path);
打开App,查看更多内容
随时随地看视频慕课网APP