我将脚本从一个文件夹移动到另一个文件夹时出现问题。 我把代码吼了一下 有人可以帮助我看看我做错了什么? 感谢我所拥有的任何提示。
<?PHP
chdir( dirname( __FILE__ ) );
include '../../bootstrap.php';
config( 'website.config' );
config( 'website.countries' );
import( 'system.cli' );
class adeleflytte extends Script {
Public function Main(){
// Get array of all source files
$files = scandir("pictures");
// Identify directories
$source = "pictures";
$destination = "/movedpictures";
// Cycle through all source files
foreach ($files as $file) {
if (in_array($file, array(".",".."))) continue;
// If we copied this successfully, mark it for deletion
if (copy($source.$file, $destination.$file)) {
$delete[] = $source.$file;
}
}
// Delete all successfully-copied files
foreach ($delete as $file) {
unlink($file);
}
}
}
CLI::Execute();
?>
答案 0 :(得分:1)
答案 1 :(得分:0)
输出您要复制的内容很有用,有助于追踪问题:
copy($source.$file, $destination.$file)
在这种情况下,因为来源是'图片'而$ file是'pic.jpg',你试图复制
picturespic.jpg
您需要在这些之间添加/
。
此外,您的目标/movedpictures
位于文件系统的根目录中,可能与您的意图不同。
答案 2 :(得分:0)
我认为移动文件的最佳方法是使用本机函数: http://www.php.net/rename
作为参数,它也接受完整路径,因此它会根据您的需要移动文件。