php 请求返回json格式数据

来源:互联网 发布:英语六级网络课程 编辑:程序博客网 时间:2024/05/06 06:42
[php] view plaincopyprint?
  1. <?php                                                                                                                                          
  2.     paserRequest($_SERVER["QUERY_STRING"]);  
  3.     function paserRequest($strReq)  
  4.     {  
  5.         parse_str($strReq);//解析请求参数  
  6.         $cpIds = explode(','$cp);//按逗号分隔  
  7.         $cpArray =  array();  
  8.         for($index=0;$index<count($cpIds);$index++){   
  9.             array_push($cpArray,array(  
  10.                                     "cp" => (int)( $cpIds[$index] ),  
  11.                                     "flag" => -1,  
  12.                                     "fc"  => 0,  
  13.                                     "ta"  => 1,  
  14.                                     "cr"  => $cpIds[$index])  
  15.                         );     
  16.         } //构造数组  
  17.         $jsonFinal = array("data" => $cpArray"seq"=>$seq);  
  18.         $json_string = json_encode($jsonFinal);//构造json对象  
  19.         print_r($json_string);  
  20.     }  
  21. ?>  


完全不懂服务器的东西,这点代码写了三个小时。。。

简单的记录一下要点,方便以后查阅:

  • 存储全局数据的$_SERVER变量
  • 解析字符串的函数
  • json编码、解码
  • 输出
  • 另外,nginx服务器需要配置php
[plain] view plaincopyprint?
  1. location ~ ^(.+\.php)(.*)$ {  
  2.     fastcgi_index index.php;  
  3.     fastcgi_pass 127.0.0.1:9999;  
  4.       
  5.     include fastcgi_params;  
  6.     set $path_info "";   
  7.     set $real_script_name $fastcgi_script_name;  
  8.     if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {  
  9.         set $real_script_name $1;   
  10.         set $path_info $2;   
  11.     }     
  12.   
  13.     fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;  
  14.     fastcgi_param SCRIPT_NAME $real_script_name;                                                                                       
  15.     fastcgi_param PATH_INFO $path_info;  
  16.     fastcgi_param SERVER_NAME $host;  
  17.     server_name_in_redirect off;  
  18. }