1

我正在尝试将我的文件从一个目录复制到另一个目录(文件不存在的目标)

据我了解,如果要重命名并且文件已存在于目标目录中,则复制功能才有效;如果目标目录中不存在该文件怎么办?

我的尝试:

public function addSlidesToPath()
{
    $myAddr=$this->input->post('addr');
    $src=realpath(BASEPATH.'../uploaded_images').'/'.$myAddr[0];
    $dest="C:\\Slides";
    return copy( $src , $dest. basename($src ));
}

如果您需要更多说明,请告诉我;如果目标中存在同名文件,我的代码可以正常工作,但如果没有同名文件,则它不起作用!

ADDED Here you can see my different attempts:

1)for **copy** without basename the error is "The second argument of copy() function cannot be a directory"

2)for **copy** with basename the error is "The second argument of copy() function cannot be a directory" as well

3)for **move_uploaded_file** with basename there is no error but the result is false!

4)for **move_uploaded_file** without basename there is no error but the result is false!

谢谢

4

1 回答 1

1

你确定你对目录有写权限吗?我不认为目标文件的存在对您编写它的能力有任何影响。

php手册说如果文件存在,文件将被覆盖。如果它们不存在,它们将被写入。

http://php.net/manual/en/function.copy.php

我认为这不起作用,并且目标文件的存在使您认为它正在起作用,而实际上它不起作用。

尝试使用同名但内容不同的源文件运行脚本以进行测试。

于 2013-11-12T00:18:03.173 回答