如何在curl帖子中使用变量?

时间:2015-03-20 18:55:36

标签: php post curl parse-platform

我正在创建一个php脚本,它将使用curl在我的Parse数据库中添加一个新行。我很难在我的setopt语句中添加变量。如果有人能引导我朝着正确的方向前进,那么我将非常感激。

这是我执行curl语句的PHP代码:

//curl commands to send information to parse
  $ch = curl_init('https://api.parse.com/1/classes/className');

curl_setopt($ch,CURLOPT_HTTPHEADER,
    array('X-Parse-Application-Id:secret1',
    'X-Parse-REST-API-Key:secret2',
    'Content-Type: application/json'));

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);


curl_setopt($ch, CURLOPT_POSTFIELDS,  "{\"Name\":\"$deviceName\"}" );

echo curl_exec($ch);
curl_close($ch);

我得到的回应是:

  

{"代码":107,"错误":"无效的JSON"}

提前谢谢!

1 个答案:

答案 0 :(得分:2)

在发送数据之前,你有什么理由不能对数组进行编码吗?

例如(未经测试):

$arr = [ "Name" => $deviceName ];
$arr_string = json_encode($arr);

curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'Content-Length: ' . strlen($arr_string)
));

curl_setopt($ch, CURLOPT_POSTFIELDS, $arr_string );