模拟Json格式传值请求与数据接收

a.php代码:

function http_post_json($url, $jsonStr)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonStr);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json; charset=utf-8',
            'Content-Length: ' . strlen($jsonStr)
        )
    );
    $response = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
 
    return array($httpCode, $response);
}
 
$url = "http://local.com/b.php";
$jsonStr = json_encode(array('a' => 1, 'b' => 2, 'c' => 2));
list($returnCode, $returnContent) = http_post_json($url, $jsonStr);

var_dump($returnCode);
var_dump($returnContent);

  

 b.php接收代码:

print_r(json_decode(file_get_contents('php://input'), TRUE));

  

  a.php结果返回值为:

httpCode:200

returnContent:Array([a] => 1, [b] => 2, [c] => 2)

原文地址:https://www.cnblogs.com/lovekingly/p/8601143.html