PHP基于CURL发送JSON格式字符串的方法示例

这篇文章主要介绍了PHP基于CURL发送JSON格式字符串的方法,结合实例形式分析了php使用curl发送json格式字符串的相关属性设置及数据接收等操作技巧,需要的朋友可以参考下。

本文实例讲述了PHP基于CURL发送JSON格式字符串的方法,分享给大家供大家参考,具体如下:

  1. /*
  2. * post 发送JSON 格式数据
  3. * @param $url string URL
  4. * @param $data_string string 请求的具体内容
  5. * @return array
  6. * code 状态码
  7. * result 返回结果
  8. */
  9. function post_json_data($url, $data_string) {
  10. $ch = curl_init();
  11. curl_setopt($ch, CURLOPT_POST, 1);
  12. curl_setopt($ch, CURLOPT_URL, $url);
  13. curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
  14. curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  15. 'Content-Type: application/json; charset=utf-8',
  16. 'Content-Length: ' . strlen($data_string))
  17. );
  18. ob_start();
  19. curl_exec($ch);
  20. $return_content = ob_get_contents();
  21. ob_end_clean();
  22. $return_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
  23. return array('code'=>$return_code, 'result'=>$return_content);
  24. }
  25. $arr = array('a'=>'555','b'=>56454564);
  26. dump(post_json_data('http://192.168.211.1/html/dump.php',json_encode($arr)));

注意:接收数据的时候不是用 $_POST,而是

$content = file_get_contents('php://input');