移动文件,然后记录一切


moving file then log everything

我使用rename()将文件从源目录移动到目标目录。请问您有什么建议,如果我在这个过程中应该如何记录这个过程?我想它应该在这个里面:

while(false !== ($file = readdir($handle))) {
    if(is_file($src . '/' . $file)) {
        rename($src . '/' . $file, $dest . '/' . $file);
    }
}

日志可以简单地包含每个文件的成功传输,或者是否发生任何错误。

Rename返回bool值,您可以使用

这应该能奏效:

$logfilename = 'log.txt'; // Or whatever you call it
while(false !== ($file = readdir($handle))) {
    if(is_file($src . '/' . $file)) {
        if(rename($src . '/' . $file, $dest . '/' . $file)){
            file_put_contents($logfilename, 'Successfully renamed '.
            '"'.$src . '/' . $file.'" to "'.$dest . '/' . $file.'"'.PHP_EOL,
                FILE_APPEND);
        }else{
            file_put_contents($logfilename, 'Failed to rename'.
            '"'.$src . '/' . $file.'" to "'.$dest . '/' . $file.'"'.PHP_EOL,
                FILE_APPEND);
        }
    }
}
$p=fopen('php://stderr','w');
while(false !== ($file = readdir($handle))) {
  if(is_file($src . '/' . $file)) {
    if(rename($src . '/' . $file, $dest . '/' . $file)) {
       @fputs($p, "OK - mv $src/$file $dest/$file'n");
    } else {
       @fputs($p, "ERROR - - mv $src/$file $dest/$file'n");
    }
  }
}
@fclose($p);