JSON使用File_get_contents获取PHP数组

时间:2018-05-23 03:59:40

标签: php arrays json file-get-contents

我正在尝试获取以下json内容。 json的输出是这样的。我希望下面的json转换为php数组。

PHP

$requestBody = file_get_contents("php://input");
$requestData = json_decode($requestBody,true);
    if($requestData){
        $no = $requestData["no[]"];
    } else {
        $no = 0;
    }echo $no;

上一页Html

<input name="no[]" type="checkbox"/>

上面的代码返回一个空数组。如何将上述JSON转换为php对象数组。

1 个答案:

答案 0 :(得分:1)

首先,请确保您将表单数据发布为JSON而不是常规表单。一种方法是将表单序列化为JSON对象,然后通过ajax请求发送它:

var formData = JSON.stringify($("#myForm").serializeArray());
//AJAX POST request here

然后在您的服务器代码上,$requestData将包含一个包含所有发布数据的精美php数组,这意味着如果您的&#34; no&#34;表单数据是一个数组,您将不得不迭代其值,您无法使用$requestData['no[]']访问它们:

foreach($requestData['no'] as $no) {
    //do your stuff
}