访问从PHP cURL发送的json POST数据

时间:2016-07-26 04:31:33

标签: php curl

我正在尝试访问此cURL请求发送的POST数据。

 $param = array(
        'foo' => 'bar',
        'bar' => 'foo'
    )
    $ch = curl_init();

    curl_setopt_array($ch, array(
        CURLOPT_URL => 'http://localhost/mysite/data.php',
        CURLOPT_POST => 'TRUE',
        CURLOPT_HEADER => TRUE,
        CURLOPT_RETURNTRANSFER => TRUE,
        CURLOPT_HTTPHEADER => array(
            'Content-Type: application/json',
            'Content-Length: '.strlen(json_encode($param))
        ),
        CURLOPT_POSTFIELDS => json_encode($param),
        )
    );

$result = curl_exec($ch);
curl_close($ch);
print_r($result);

在data.php中,我想访问从cURL发送的JSON,并在基于它们的一些验证后返回数据。请帮我从data.php访问json帖子数据。到目前为止,data.php仅返回一个空的post数组。

print_r($_POST);

1 个答案:

答案 0 :(得分:4)

使用此php://input

例如

echo json_decode(file_get_contents('php://input'));