从PHP下载GitHub的回购?

时间:2013-09-12 14:27:02

标签: php github github-api

使用PHP将GitHub repo的文件下载到目录中的最佳方法是什么。

我尝试下载zipball并将其解压缩,但我很难找到解压缩zip文件的好方法。

2 个答案:

答案 0 :(得分:1)

依赖关系管理

使用composer

Composer是PHP的依赖管理工具(类似于节点的npm)。 请取悦转到http://getcomposer.org/,如果您还没有使用它,请阅读作曲家。

以编程方式下载和解压缩

由于您已经提到过您已经能够下载zip文件,我将专注于提取它。如果你正在使用composer(就像你应该的那样),你可以在https://packagist.org搜索包存储库。快速搜索zip给了我一些从全功能归档管理库到简单解压缩实用程序的结果。 This一个似乎很容易使用,并且很可能会成功。

// https://github.com/vipsoft/Unzip/blob/master/README.md

use VIPSoft\Unzip\Unzip;

$unzipper  = new Unzip();
$filenames = $unzipper->extract($zipFilePath, $extractToThisDir);

在PHP 5.2.6中以编程方式下载和解压缩

感谢this问题,我了解了PHP 5.2.0中引入的PHP zip扩展。

看起来像使用zip会遵循类似下面的代码

$zip = new ZipArchive;
if (true === $zip->open($archiveFileName)) {
    $zip->extractTo($destination);
    $zip->close();
} else {
    // handle error
}

希望您的客户也不会反对安装php zip扩展程序。

答案 1 :(得分:0)

只需下载zipball并使用thisunzip等命令行工具(大多数系统都存在)。