PhoneGap构建API:PHP的CURL命令行


PhoneGap Build API : CURL Command Line to PHP

我正在使用PhoneGap Build API上传文件并创建其apk。你可以在这里查看https://build.phonegap.com/docs/write_api

我在使用php实现curl时遇到了问题。命令行上的以下curl语句运行良好。

$curl-F文件=@/Users/alunny/index.html-uandrew.lunny@nitobi.com-F'data={"title":"API V1 App","package":"com.alunny.apiv1","version":"0.1.0","create_method":"file"}'https://build.phonegap.com/api/v1/apps

当我尝试使用php编写此代码时,我会遇到错误。我已经写了以下代码。

$username = "email";
$password = "password";
$target_url = "https://build.phonegap.com/api/v1/apps";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $target_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
$post = array(
        "file"=>"@www.zip",
        "data"=>json_encode(array("title"=>"My Test App","package"=>"com.alunny.apiv1","version"=>"0.1.0","create_method"=>"file"))
    );
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
$result = curl_exec($ch);
curl_close ($ch);

通过运行此代码,我得到了以下错误"未指定create_method:file、remote_repo或hosted_repo"

请帮我解决这个问题。

感谢

尝试shell_exec()函数:

$cmd = "https://build.phonegap.com/api/v1/apps";
$out = shell_exec($cmd);
$data = json_decode($out);