如何使用这种格式的PHP在JSON中添加新数组?

如何使用这种格式的PHP在JSON中添加新数组?,php,json,Php,Json,我花了几个小时,直到最后寻求帮助。我是JSON和PHP新手,任何人都可以帮助或指导我使用这种格式。非常感谢您的关注 这是我期望的JSON树结构 { "table-name": "Beta", "created-on": "May 03, 2021", "token": "6kh3o0oRLZreJ9K", "columns": "Name,Org,

我花了几个小时,直到最后寻求帮助。我是JSON和PHP新手,任何人都可以帮助或指导我使用这种格式。非常感谢您的关注

这是我期望的JSON树结构

{
"table-name": "Beta",
"created-on": "May 03, 2021",
"token": "6kh3o0oRLZreJ9K",
"columns": "Name,Org,Address,Mobile,Email,Pass",
"data": [
    {
        "Name": "Anthony ",
        "Org": "Byahe",
        "Address": "San Pedro",
        "Mobile": "425",
        "Email": "testacc@gmail.com",
        "Pass": "01212125134"
    },
    {
        "Name": "Bev",
        "Org": "Hnono",
        "Address": "Palawan",
        "Mobile": "24525",
        "Email": "s4aww@gmail.com",
        "Pass": "0000"
    }
]}
我在我的文件上提取这个JSON

$jsn = file_get_contents('./tables/test.json');
$arr = json_decode($jsn);
这里是我在PHP上的工作,尝试使用array\u push添加新数组

 $array = Array(
"table-name"=>"Beta",
"created-on"=>"May 03, 2021",
"token"=>"6kh3o0oRLZreJ9K",
"columns"=>"Name,Org,Address,Mobile,Email,Pass",

//Array(
 "data" => array(
    array (
    "Name" => $_POST["fullname"],
    "Org" => $_POST["organization"],
    "Address" => $_POST["address"],
    "Mobile" => $_POST["phone"],
    "Email" => $_POST["email"],
    "Pass" => $_POST["password"]
 ),
),

);

  array_push();
 $json = json_encode($array);

 if (file_put_contents("./tables/test.json", $json))
 echo "Account created successfully...";
 else 
 echo "Unable to create an account...";

假设要向数据对象添加新项

首先对其进行json解码,并将其添加到php中的数组中。然后再对它进行编码

$json = '{
    "table-name": "Beta",
    "created-on": "May 03, 2021",
    "token": "6kh3o0oRLZreJ9K",
    "columns": "Name,Org,Address,Mobile,Email,Pass",
    "data": [
        {
            "Name": "Anthony ",
            "Org": "Byahe",
            "Address": "San Pedro",
            "Mobile": "425",
            "Email": "testacc@gmail.com",
            "Pass": "01212125134"
        },
        {
            "Name": "Bev",
            "Org": "Hnono",
            "Address": "Palawan",
            "Mobile": "24525",
            "Email": "s4aww@gmail.com",
            "Pass": "0000"
        }
    ]}';

$items = json_decode($json);

$items->data[] = [
    "Name" => $_POST["fullname"],
    "Org" => $_POST["organization"],
    "Address" => $_POST["address"],
    "Mobile" => $_POST["phone"],
    "Email" => $_POST["email"],
    "Pass" => $_POST["password"]];

echo json_encode($items);

数据字段是对象数组吗?如果是,请尝试类似的方法

$array = [
    "table-name"=>"Beta",
    "created-on"=>"May 03, 2021",
    "token"=>"6kh3o0oRLZreJ9K",
    "columns"=>"Name,Org,Address,Mobile,Email,Pass",
    "data" => []
]

$data = [
    "Name" => $_POST["fullname"],
    "Org" => $_POST["organization"],
    "Address" => $_POST["address"],
    "Mobile" => $_POST["phone"],
    "Email" => $_POST["email"],
    "Pass" => $_POST["password"]
];

array_push($array["data"], $data);
$json = json_encode($array);

不清楚您是如何将这些信息添加到原始数组中的。你能展示一下真正执行推送的代码吗?很抱歉,我对这个很陌生,还在学习如何使用这个堆栈溢出。我会试着告诉伊迪蒂。谢谢你的关注,这一个看起来如此接近,因为我也测试它,它的工作。对我的目标是向数据对象添加新项,因为这是一个小型创建帐户数据库项目,我正在处理JSON和PHP,但是你能告诉我一些代码如何使用array_push插入变量项吗?你好,我将编辑我的问题,如果你有空,请查看,谢谢你的关注,希望它可以清除一切…是的,这就像我添加新的项目,这是一个注册帐户使用JSON和PHPI已经改变了我的答案。干杯