我想在用户执行操作后从github下载存储库文件 . 代码将无法按预期工作 . 代码运行时会创建 .zip
文件,但生成的zip文件为空 . 我怎么解决这个问题?
$url = "https://github.com/$u/$repo/archive/master.zip";
$ch = curl_init();
$f = fopen(__DIR__.'/master.zip', 'w+');
$opt = [
CURLOPT_URL => $url,
CURLOPT_FILE => $f,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_BINARYTRANSFER => true,
CURLOPT_HEADER => false,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_SSL_VERIFYPEER => false,
];
curl_setopt_array($ch, $opt);
$file = curl_exec($ch);
curl_close($ch);
fclose($f);
1 回答
从代码中删除
CURLOPT_RETURNTRANSFER => true
或将其放在CURLOPT_FILE
之前 .这是known interaction,因为
CURLOPT_FILE
取决于CURLOPT_RETURNTRANSFER
被设置 .