我的Web应用程序存储在XAMPP / htdocs / projectname /目录中。我有图像(来源)&上面目录中的img(目标)文件夹。我正在编写以下代码行,以便将复制图像从一个文件夹复制到另一个文件夹。但我得到以下Warnnigs:(警告:复制(资源ID#3 / image1.jpg):无法打开流:C:\ xampp \ htdocs中没有这样的文件或目录)和图像是没有复制到目的地。
<?php
$src = opendir('../images/');
$dest = opendir('../img/');
while($readFile = readdir($src)){
if($readFile != '.' && $readFile != '..'){
if(!file_exists($readFile)){
if(copy($src.$readFile, $dest.$readFile)){
echo "Copy file";
}else{
echo "Canot Copy file";
}
}
}
}
?>
答案 0 :(得分:1)
只是一个猜测(对不起),但我不相信你可以这样使用$src = opendir(...)
和$src.$readFile
。试着这样做:
$srcPath = '../images/';
$destPath = '../img/';
$srcDir = opendir($srcPath);
while($readFile = readdir($srcDir))
{
if($readFile != '.' && $readFile != '..')
{
/* this check doesn't really make sense to me,
you might want !file_exists($destPath . $readFile) */
if (!file_exists($readFile))
{
if(copy($srcPath . $readFile, $destPath . $readFile))
{
echo "Copy file";
}
else
{
echo "Canot Copy file";
}
}
}
}
closedir($srcDir); // good idea to always close your handles
答案 1 :(得分:1)
在代码中替换此行,这肯定会有效。
if(copy("../images/".$readFile, "../img/".$readFile))
答案 2 :(得分:0)
你提供了错误的路径,如果你的文件的路径说script.php是“XAMPP / htdocs / projectname / script.php”而且images和img都在“projectname”文件夹中,你应该使用$ srcPath的以下值和$ destPath,将其值更改为
$srcPath = 'images/';
$destPath = 'img/';
答案 3 :(得分:0)
public function getImage()
{
$Path='image/'; //complete image directory path
$destPath = '/edit_image/';
// makes new folder, if not exists.
if(!file_exists($destPath) || file_exists($destPath))
{
rmdir($destPath);
mkdir($destPath, 0777);
}
$imageName='abc.jpg';
$Path=$Path.$imageName;
$dest=$destPath.$imageName;
if(copy($Path, $dest));
}