在php中删除json数组

在php中删除json数组,php,json,Php,Json,我正在尝试使用PHP从JSON文件中删除一个数组 我只是不确定如何使用PHP设置删除数组。我可以处理jQuery方面的事情 如果单击前端上的按钮,它将删除该数组 <button id="harry_0123">harry_0123</button> <button id="ben_0124">ben_0124</button> 以下是我的PHP示例: <?php $json_str = file_get_contents('doc

我正在尝试使用PHP从JSON文件中删除一个数组

我只是不确定如何使用PHP设置删除数组。我可以处理jQuery方面的事情

如果单击前端上的按钮,它将删除该数组

<button id="harry_0123">harry_0123</button>
<button id="ben_0124">ben_0124</button>
以下是我的PHP示例:

<?php

    $json_str = file_get_contents('doc/info.json');


    $json_arr = json_decode($json_str, true);


    if(!$json_arr) {
        $json_arr = array();
    }

    $json_str_done = json_encode($json_arr, JSON_PRETTY_PRINT);
    file_put_contents('doc/info.json', $json_str_done);

试试这个,

if(!empty($json_arr)) {
      unset($json_arr['ben_0124'])
  }

试试这个,

if(!empty($json_arr)) {
      unset($json_arr['ben_0124'])
  }
您的JSON代码应该是(逗号太多):

要在PHP中删除数组数据,可以使用
unset

//索引目标(如果从表单提交,请使用$\u POST/$\u GET)
$target='harry_0123';
//检查目标
if(isset($json_arr[$target])){
//删除
未设置($json_arr[$target]);
}
您的JSON代码应该是(逗号太多):

要在PHP中删除数组数据,可以使用
unset

//索引目标(如果从表单提交,请使用$\u POST/$\u GET)
$target='harry_0123';
//检查目标
if(isset($json_arr[$target])){
//删除
未设置($json_arr[$target]);
}

您的意思是,如果您单击ben_0124 id按钮,则会删除info.json中的ben_0124数组?而哈利•欧0123会保持原样吗?是的,没错。我只是想用php删除一个json数组。那么,您是否在HTML部分编写了ajax来将按钮id传递给php文件?如果是,那么向我们展示带有echo var_dump($_POST)的代码,该数据需要我在这里重写。这是我正在做的事情。如果(!$json_arr){unset(array[“ben_0124”];$json_arr=array();}这是怎么回事?你的意思是,如果你点击了ben_0124 id按钮,那么从info.json ben_0124 array将被删除?而哈利•欧0123会保持原样吗?是的,没错。我只是想用php删除一个json数组。那么,您是否在HTML部分编写了ajax来将按钮id传递给php文件?如果是,那么向我们展示带有echo var_dump($_POST)的代码,该数据需要我在这里重写。这是我正在做的事情。如果(!$json_arr){unset(array[“ben_0124”]);$json_arr=array()}这怎么可能不起作用。
{
  "harry_0123": {
    "id": "0123",
    "name": "harry"
  },
  "ben_0124": {
    "id": "0124",
    "name": "ben"
  }
}