欢迎访问上海市某某有限公司
上海市某某有限公司专注网站制作10年!为企业打造专业的互联网营销解决方案
全国咨询热线: 18123456789
联系我们

上海市某某有限公司

地址:某某市某某区某某公路666弄66号

手机:18123456789

电话:021-6666666

邮箱:313801120@qq.com

当前位置:首页 > 新闻资讯 > 编程语言 > php >

PHP发送/接收JSON请求

时间:2022/7/27 8:44:27 作者: 点击:100次

PHP发送JSON请求

<?PHP 
  
 $url = "http://xiyueta/2.php";     
  
  
 // $data = json_encode('["foo" => "bar"]'); 
  
 //第一种方法 
 // $data = array('title'=>'test1','b'=>'test2','c'=>array('1','2','3'));   
  
 //第二种方法 
 $json = '{"title":"php","b":"mysql","c":3}';   
 $data=json_decode($json);     
 $json_data = json_encode($data); 
  
 $curl = curl_init($url); 
 curl_setopt($curl, CURLOPT_HEADER, false); 
 curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
 curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-type: application/json")); 
 curl_setopt($curl, CURLOPT_POST, true); 
 curl_setopt($curl, CURLOPT_POSTFIELDS, $json_data); 
 curl_exec($curl); 
 curl_close($curl); 
  
 
PHP接受JSON请求
<?PHP 
 $data = json_decode(file_get_contents('php://input')); 
  
  
  
 // 保存文件 
 function aspSaveFile($file, $text) { 
     // $file = handlePath ( $file ); 
     if (! $file || ! $text) { 
         return false; 
     }  
         if ($fp = @fopen ( $file, "w" )) { 
             if (@fwrite ( $fp, $text )) { 
                 fclose ( $fp ); 
                 return true; 
             } else { 
                 fclose ( $fp ); 
                 return false; 
             } 
         }  
     return false; 
 } 
 aspSaveFile("./1.txt",$data); 
 aspSaveFile("./2.txt","title=".$data->title."\n"."b=".$data->b); 
 die('OK='.$data ); 
  
  
 
PHP的json_decode函数详解
<?php    
 $json = '{"a":"php","b":"mysql","c":3}';   
 $json_Class=json_decode($json);    
 $json_Array=json_decode($json, true);    
 print_r($json_Class);    
 echo("<br>"); 
 print_r($json_Class->b);    
 echo("<br>"); 
 print_r($json_Array);      
 echo("<br>"); 
 print_r($json_Class->b);