php 通过curl post发送json数据实例
利用php curl发送json数据与curl post其它数据是一样的,下面我来给大家总结几个关于curl post发送json数据实例,希望能加深各位对curl post json数据的理解吧。
例1代码如下:
$data = array ( "name" => "Hagrid" , "age" => "36" ); $data_string = json_encode( $data ); $ch = curl_init( 'http://api.local/rest/users' ); curl_setopt( $ch , CURLOPT_CUSTOMREQUEST, "POST" ); curl_setopt( $ch , CURLOPT_POSTFIELDS, $data_string ); curl_setopt( $ch , CURLOPT_RETURNTRANSFER, true); curl_setopt( $ch , CURLOPT_HTTPHEADER, array ( 'Content-Type: application/json' , 'Content-Length: ' . strlen ( $data_string )) ); $result = curl_exec( $ch );例2,代码如下:
function http_post_data( $url , $data_string ) { $ch = curl_init(); curl_setopt( $ch , CURLOPT_POST, 1); curl_setopt( $ch , CURLOPT_URL, $url ); curl_setopt( $ch , CURLOPT_POSTFIELDS, $data_string ); curl_setopt( $ch , CURLOPT_HTTPHEADER, array ( 'Content-Type: application/json; charset=utf-8' , 'Content-Length: ' . strlen ( $data_string )) ); ob_start(); curl_exec( $ch ); $return_content = ob_get_contents(); ob_end_clean(); $return_code = curl_getinfo( $ch , CURLINFO_HTTP_CODE); return array ( $return_code , $return_content ); } $url = "http://xx.xx.cn" ; $data = json_encode( array ( 'a' =>1, 'b' =>2)); list( $return_code , $return_content ) = http_post_data( $url , $data );例3代码如下:
$data =' { "button" :[ { "type" : "click" , "name" : "今日歌曲" , "key" : "V1001_TODAY_MUSIC" }, { "type" : "click" , "name" : "歌手简介" , "key" : "V1001_TODAY_SINGER" }, { "name" : "菜单" , "sub_button" :[ { "type" : "click" , "name" : "hello word" , "key" : "V1001_HELLO_WORLD" }, { "type" : "click" , "name" : "赞一下我们" , "key" : "V1001_GOOD" }] }] }'; $ch = curl_init( $urlcon ); //请求的URL地址 curl_setopt( $ch , CURLOPT_CUSTOMREQUEST, "POST" ); curl_setopt( $ch , CURLOPT_POSTFIELDS, $data ); //$data JSON类型字符串 curl_setopt( $ch , CURLOPT_RETURNTRANSFER, true); curl_setopt( $ch , CURLOPT_HTTPHEADER, array ( 'Content-Type: application/json' , 'Content-Length: ' . strlen ( $data ))); $data = curl_exec( $ch ); print_r( $data ); //创建成功返回:{"errcode":0,"errmsg":"ok"}小结,我们发现最核心的一句代码就是Content-Type: application/json;这个是文件格式类型了.
查看更多关于php 通过curl post发送json数据实例 - php高级应用的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did29929