PHP如何接收JSON?

2025-03-25 17:38:30
推荐回答(3个)
回答1:

对于json,PHP有对应的方法进行操作。

一般而言,json会以字符串形式传给PHP脚本,一般都是放在$_POST里面,
'value', 'key2' => 'value2' ); $demo_json = json_encode($demo); // 格式是{"key":"value","key2":"value2"} echo $demo_json;

回答2:

header("Content-type:text/html;charset=utf-8");
if($_POST){
    $d = $_POST['data'];//这里获取的直接就是数组了,不需要用到json_decode
    echo $d['doing'];
    //print_r($d);
    exit;
}
?>
 


$(document).ready(function() {
    $("#xx").click(function(){
        var url = "test.php";
        var str ="{'doing':'createvote','type':'type','num':'num','votetheme':'votetheme','creater':'loginname'}";//json格式字符串
        var data = eval('('+str+')');//转换成数组对象,不加这步,那么PHP获取的是字符串。
        $.post(url, {'data': data}, function(res) {//注意jquery的$.post的第2个参数必须是键值对形式
            alert(res);
        });
    });
});

 


上面是php接收ajax传来的json实例.

回答3:

第三方平台的输出本身就是一个json格式的,你只要把它读到一个变量里,再解码JSON,就可以得到PHP的数据格式了

$str    = file_get_contents($url);
$obj   = json_decode($str);