将带有其他参数的curl转换为PHP curl

时间:2016-07-01 22:40:40

标签: php curl jenkins

尝试转换curl命令以构建Jenkins job,以便我可以在PHP中使用它。这是我的工作:

<?php

        $testrun_id = "1744";
        $cmd="curl -X POST http://build:f9280f220bfb4c596f83a0@mobile-jenkins.me.com:8080/job/android-job-git/build --data-urlencode json='{"parameter": [{"name":"POST_RESULTS", "value":"true"}, {"name":"RUN_ID", "value":"{$testrun_id}"}, {"name":"CHECK_NAME", "value":"SampleAutomatedPlan"}]}'";
        exec($cmd, $result);

?>

此处,我将3个参数传递给jenkins job,它们为POST_RESULTS,其值为trueRUN_ID,其值为$testrun_id,即1744 1}}和CHECK_NAME,其值为SamplAutomatedPlan。当我在mac终端上运行这个curl命令时,它运行得很好。

当我尝试运行这个php脚本时,会给我Parse error: parse error on that $cmd="curl..." line的遗漏或错误是什么?

1 个答案:

答案 0 :(得分:2)

您需要通过添加反斜杠来转义双引号。

$cmd = "curl -X POST http://build:f9280f220bfb4c596f83a0@mobile-jenkins.me.com:8080/job/android-job-git/build --data-urlencode  json='{\"parameter\": [{\"name\":\"POST_RESULTS\", \"value\":\"true\"}, {\"name\":\"RUN_ID\", \"value\":\"{$testrun_id}\"}, {\"name\":\"CHECK_NAME\", \"value\":\"SampleAutomatedPlan\"}]}'";