PHP|POST变量与AJAX中的Curl一样


PHP | POST variables with Curl as in AJAX

如何使用curl通过ajax复制此数据发布?

  ...
  data: {
    search: JSON.stringify({
    daterange : "custom", 
    daterangecustom  : {
        start   : "2013-03-01T23:59:59",
        end     : "2018-03-01T23:59:59"
      }
    }),
    limit: 50
  },
  ...

我不需要curl的全部代码,只需要$params值:

curl_setopt($curl, CURLOPT_POSTFIELDS, $params);

我试着做这件事已经有一段时间了,但没有成功。非常感谢这里有解决方案的人!!

在不了解更多信息的情况下,我认为这就是您想要的:

$data = array(
    'search' => array(
        'daterange' => 'custom',
        'daterangecustom' => array(
            'start' => '2013-03-01T23:59:59',
            'end'   => '2018-03-01T23:59:59',
        ),
    ),
    'limit' => 50,
);
$headers = array(
    'Content-type: application/json',
);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

请求将如下所示:

POST /url HTTP/1.1
Host: host
Accept: */*
Content-type: application/json
Content-Length: 122
{"search":{"daterange":"custom","daterangecustom":{"start":"2013-03-01T23:59:59","end":"2018-03-01T23:59:59"}},"limit":50}