我有一个下载zip存档的脚本,我需要将内容解压缩到zip存档所在的目录。我尝试了各种各样的东西,这是最后一个:
mkdir("/home/site/public_html/".$db."", 0777);
$url = 'http://wordpress.org/latest.zip';
$path = "/home/site/public_html/".$db."/latest.zip";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);
file_put_contents($path, $data);
$zip = new ZipArchive;
$zip->open("/home/site/public_html/".$db."/latest.zip");
$zip->extractTo("/home/site/public_html/".$db."/");
$zip->close();
zip文件下载得很好,但不会提取。还有其他方法可以提取文件吗?
答案 0 :(得分:1)
这听起来像权限错误;对于Web用户(PHP运行的)来说,许多托管提供商(以及良好的安全实践)通常具有有限的权限,例如在Web目录中没有写入。看看你是否可以通过提升error_reporting
级别(http://php.net/manual/en/function.error-reporting.php)获得有关失败的更多信息,如果这是问题,可以使用suexec解决。 (http://www.alain.knaff.lu/howto/PhpSuexec/)小心!