2016-08-12 46 views
0

我正在寻找使用Storage :: move在Laravel 5.2中移动文件。我使用的代码如下:使用存储::移动在Laravel 5.2中移动文件:

$file = basename($m); 
      $new_path= base_path('mailbox_archive/'.$file); 

Storage::move($m, $new_path); 

我收到以下错误消息:

[联赛\ Flysystem \ FileNotFoundException异常]
文件未在路径中找到: 用户/ JamesParsons/Dropbox的/虚拟/邮箱/ 17_10-08
-16_20-49-17.json

的路径如下:

$m=/Users/JamesParsons/Dropbox/virtual/mailbox/17_10-08-16_20-49-17.json 

$new_path=/Users/JamesParsons/Dropbox/virtual/mailbox_archive/17_10-08-16_20-49-17.json 

感谢

+0

尽量充分明确地使用:'$ old_path = BASE_PATH('邮箱/'.$文件);'然后:'存储: :move($ old_path,$ new_path);' – Maraboc

+0

不幸的是@Maraboc –

+0

你是否在将它移动到下面的代码中后使用这个文件(这行后面的代码'Storage :: move($ m,$ new_path);') ?或者没有其他代码? – Maraboc

回答

0

您试图访问/移动你的计算机上的文件。但是你在主机/虚拟机/服务器。这不会像VM内部那样工作,因此无法访问您的保管箱文件夹。

+0

但是同一个进程可以在活动服务器上运行? @Simon Davies? –

+0

为它在您的本地/ vm /服务器等工作,那么您将需要在您的服务器/站点中的文件夹/ Users/JamesParsons/Dropbox/virtual /并使用存储磁盘配置进行设置。该代码无法逃离服务器并访问您的HD –

+0

只要我知道它一旦生效就会工作,不应该是个问题。这是命令中的最后一个动作,所有测试到那个点都没有问题 –

0

我改变了从上面

Storage::move($m, $new_path); 

File::move($m, $new_path);