php重命名 - 设备或资源忙

时间:2017-06-02 01:39:15

标签: php rename

所以我试图将一个临时上传目录的4个文件移动到一个文件夹,但我得到了一个"设备或资源很忙"错误。有时4个错误,但大多只有2个。 文件仍在移动,但错误后我的脚本不会继续。

我尝试过try / catch和usleep但是它不起作用:(

任何建议都可以提供帮助:)

其他帖子说它可能已安装或某些特殊文件名,如'。'或者' ..'但我不知道这会怎么发生

public function handleFiles($id) {
    $rootdir = '/home/ubuntu/workspace/uploads/';
    $dir = $rootdir . $id . '/';
    $tmpdir = $rootdir . '-1/';
    if (!file_exists($dir) && !is_dir($dir)) {
        mkdir($dir, 0777);
    }
    chmod($dir, 0777);
    if (file_exists($tmpdir) && is_dir($tmpdir)) {
        $tmpfiles = scandir($tmpdir);
        foreach ($tmpfiles as $tmpfile) {
            $oldfile = $tmpdir . $tmpfile;
            $newfile = $dir . $tmpfile;
            rename ($oldfile, $newfile);
        } 
        chmod($dir, 0755);
    }
    return true;
}

0 个答案:

没有答案