在Laravel 5.3中移动上传的文件

时间:2017-04-08 10:23:15

标签: php laravel laravel-5

我需要从临时位置移动上传的图片。

上传的临时图像的路径如下:

  

/storage/tmp/posts/14916460012147460153.jpg

要移动图像,我正在使用Storage :: move()facade。

  $__fn = basename( $tmpImage );
  Storage::move( 
    storage_path( 'app' ) . '/public/tmp/posts/' . $__fn,
    storage_path( 'app' ) . '/public/images/'.Auth::id().'/posts/' . $__fn
  );

但它引发了一个错误:

  

Filesystem.php第385行中的FileNotFoundException:

     

路径中找不到档案:   d:\项目\博览会\存储\应用程序/公共/ TMP /帖/ 14916460012147460153.jpg

虽然文件存在,可以通过浏览器在localhost找到:8000 / storage / tmp / posts / 14916460012147460153.jpg

我阅读了laravel filesystem的文档,但是无法理解这里缺少的内容。

1 个答案:

答案 0 :(得分:1)

请尝试使用磁盘实例而不是Storage外观和绝对路径:

Storage::disk('public')->move(
    'tmp/posts/' . $__fn, 
    'images/'. Auth::id() . '/posts/' . $__fn);