0

我的脚本有问题。当我解压缩使用 tis 脚本

if (file_exists($zipfile))
{
    $zip = new ZipArchive;
    if ($zip->open($zipfile) === TRUE)
    {
        if ($zip->extractTo($path) === TRUE)
            return 'file extracted';
        else
            return 'cant extract';
        $zip->close();
    }
    else
    {
        return 'cant open file 2';
    }
}
else
{
    return 'zip doesnt exist';
}

我无法使用 ftp 删除提取的文件。文件夹($路径)有 chmode 777 但是当我尝试删除提取的文件使用 ftp 我看到消息权限被拒绝但是如果我将文件上传到文件夹使用 ftp 我可以删除文件

4

3 回答 3

0

正如 Dahaka 所说,zip-close();永远不会调用,因为您将在到达之前返回“文件提取”或“无法提取” zip-close();,从而退出该方法。你应该zip-close();在你的代码中返回之前

于 2013-07-11T14:01:33.553 回答
0

很简单,但我可能错了,但我会做unlink($zipfile);

于 2013-07-11T14:01:34.227 回答
0

即使您的文件夹具有 777 权限,您提取的文件也与运行服务器的用户具有相同的权限,这就是您无法删除它们的原因。您可以在提取后将它们从 PHP 中 chmod 到 777。

于 2013-07-11T14:01:35.353 回答