in src/Utils/Project.php [75:100]
public function downloadArchive($name, $url, $dir = '')
{
$tmpdir = sys_get_temp_dir();
$file = $tmpdir . DIRECTORY_SEPARATOR . basename($url);
file_put_contents($file, file_get_contents($url));
$dir = $this->getRelativeDir($dir);
if (substr($url, -3, 3) === 'zip') {
$zip = new \ZipArchive();
if ($zip->open($file) === false) {
$this->errors[] = 'Failed to open a zip file: ' . $file;
return;
}
if ($zip->extractTo($dir) === false) {
$this->errors[] = 'Failed to extract a zip file: ' . $file;
$zip->close();
return;
}
$zip->close();
} else {
$phar = new \PharData($file, 0, null);
$phar->extractTo($dir, null, true);
}
unlink($file);
$this->info[] = 'Downloaded ' . $name . '.';
}