复制()时获取错误。

时间:2014-04-08 11:23:37

标签: php

我尝试copy($src, $dst),其中$src类似于'../folder1/folder2/file.ext'$dst'../new_folder/subfolder/newfile.ext'。请注意,'../new_folder/subfolder/'可能不存在。

copy()会抛出以下错误

  

警告:复制(../ new_folder / subfolder / newfile.ext):   无法打开流:没有这样的文件或目录   第73行的scriptname.php

问题出在哪里?

4 个答案:

答案 0 :(得分:0)

目标路径似乎没有正常运行。您需要提供文件的基本路径以及权限。因为写入像./ folder1 / folder2

这样的路径,无法识别某些时间文件夹级别

答案 1 :(得分:0)

在我的拙见中,它必须与你的路径目的地有关。但是根据我最近使用file_get_contents,file_put_contents做同样事情的经验,它实现了一个梦想,也许副本已被弃用。

http://uk3.php.net/function.file-put-contents

http://uk1.php.net/file_get_contents

请按照这些链接了解它们的工作方式,但我确信它们的效率更高(我认为)。

我希望这会有所帮助

答案 2 :(得分:0)

您要编写文件的文件夹需要存在,并且您需要具有写入权限。

“复制”功能需要两个参数为ABSOLUTE PATH 在进行复制之前,使用realpath获取目录的绝对路径。

答案 3 :(得分:0)

根据this评论,您要复制的文件夹首先需要存在 - 这意味着您必须检查要复制的文件夹是否存在,以及它是否存在创建它并复制文件。

确保您拥有相应的复制权限,并且永远不会将新文件/文件夹的权限设置为777,除非您完全确定需要此权限并且您知道自己在做什么。