使用php将json对象解析为json数组。

使用php将json对象解析为json数组。,php,arrays,json,Php,Arrays,Json,我要请人为婚礼做回音。我想要它,这样人们就可以提交他们的rsvp数据,并将这些数据放入json数组。然后我想把这个数组放到一个表中 我这里有一个数组: { "weddingRSVP": [ { "success": true, "FirstName": "k", "LastName": "k", "Email": "k", "Phone": "k",

我要请人为婚礼做回音。我想要它,这样人们就可以提交他们的rsvp数据,并将这些数据放入json数组。然后我想把这个数组放到一个表中

我这里有一个数组:

{
    "weddingRSVP": [
        {
            "success": true,
            "FirstName": "k",
            "LastName": "k",
            "Email": "k",
            "Phone": "k",
            "Comments": "kk",
            "GuestNumber": "0",
            "Guest1": "k",
            "Guest2": "k",
            "Guest3": "k"
        }
    ]
}
这是我运行代码时得到的结果:

{
    "0": {
        "success": true,
        "FirstName": "l",
        "LastName": "l",
        "Email": "l",
        "Phone": "l",
        "Comments": "l",
        "GuestNumber": "0",
        "Guest1": "l",
        "Guest2": "l",
        "Guest3": "l"
    },
    "weddingRSVP": [
        {
            "success": true,
            "FirstName": "k",
            "LastName": "k",
            "Email": "k",
            "Phone": "k",
            "Comments": "kk",
            "GuestNumber": "0",
            "Guest1": "k",
            "Guest2": "k",
            "Guest3": "k"
        }
    ]
}
这就是我想要的:

{
    "weddingRSVP": [
        {
            "success": true,
            "FirstName": "k",
            "LastName": "k",
            "Email": "k",
            "Phone": "k",
            "Comments": "kk",
            "GuestNumber": "0",
            "Guest1": "k",
            "Guest2": "k",
            "Guest3": "k"
        },
        {
            "success": true,
            "FirstName": "l",
            "LastName": "l",
            "Email": "l",
            "Phone": "l",
            "Comments": "l",
            "GuestNumber": "0",
            "Guest1": "l",
            "Guest2": "l",
            "Guest3": "l"
        }
    ]
}
这就是我的全部php:

<?php
header('Content-type: text/javascript');

$fname =$lname= $email = $tel = $comment = $guest = $guestnum =$guest1=$guest2=$guest3= "";

$json = array(

    'success' => false,
    'FirstName' => 0,
    'LastName' => 0,
    'Email' => 0,
    'Phone' => 0,
    'Comments' => 0,
    'GuestNumber' => 0,
    'Guest1' => 0,
    'Guest2' => 0,
    'Guest3' => 0
    );


    if (isset($_POST['fname'],$_POST['lname'],
                $_POST['email'],$_POST['tel'],
                $_POST['comment'],$_POST['guestnum'],
                $_POST['guest3'],$_POST['guest2'],
                $_POST['guest3'])) 
    {
        $fname = test_input($_POST["fname"]);
        $lname = test_input($_POST["lname"]);
        $email = test_input($_POST["email"]);
        $tel =   test_input($_POST["tel"]);
        $comment = test_input($_POST["comment"]);
        $guestnum = test_input($_POST["guestnum"]);
        $guest1 = test_input($_POST["guest1"]);
        $guest2 = test_input($_POST["guest2"]);
        $guest3 = test_input($_POST["guest3"]);

        $json['success'] = true;
        $json['FirstName'] = $fname;
        $json['LastName'] = $lname;
        $json['Email'] = $email;
        $json['Phone'] = $tel;
        $json['Comments'] = $comment;
        $json['GuestNumber'] = $guestnum;
        $json['Guest1'] = $guest1;
        $json['Guest2'] = $guest2;
        $json['Guest3'] = $guest3;

    }
        $file = 'weddingRSVP.json';
        $data = json_decode(file_get_contents($file),1);
        $data[] = $json;
        file_put_contents($file, json_encode($data));



    function test_input($data) {
        $data = trim($data);
        $data = stripslashes($data);
        return $data;
    }
    ?>

感谢所有帮助过你的人

我认为问题出在

$data[] = $json;
相反,尝试

$data['weddingRSVP'][] = $json
希望能有帮助

    $file = 'weddingRSVP.json';
    $data = json_decode(file_get_contents($file),1);
    $data['weddingRSVP'][] = $json
    file_put_contents($file, json_encode($data));

只是想帮点忙☺
    $file = 'weddingRSVP.json';
    $data = json_decode(file_get_contents($file),1);
    $data['weddingRSVP'][] = $json
    file_put_contents($file, json_encode($data));