尝试转换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
,其值为true
,RUN_ID
,其值为$testrun_id
,即1744
1}}和CHECK_NAME
,其值为SamplAutomatedPlan
。当我在mac终端上运行这个curl命令时,它运行得很好。
当我尝试运行这个php脚本时,会给我Parse error: parse error on that $cmd="curl..." line
的遗漏或错误是什么?
答案 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\"}]}'";