在PHP中删除JSON数组

时间:2019-03-18 03:17:53

标签: php json

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

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

如果我单击前端的按钮,它将删除该阵列。

<button id="harry_0123">harry_0123</button>
<button id="ben_0124">ben_0124</button>

这是JSON文件的示例:

{
    "harry_0123": {
        "id": "0123",
        "name": "harry",
    },
        "ben_0124": {
        "id": "0124",
        "name": "ben",
    },
}

这是我的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);

2 个答案:

答案 0 :(得分:1)

尝试一下

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

答案 1 :(得分:1)

您的JSON代码应该是(太多逗号):

{
  "harry_0123": {
    "id": "0123",
    "name": "harry"
  },
  "ben_0124": {
    "id": "0124",
    "name": "ben"
  }
}

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

// Index Target (use $_POST / $_GET if you submitted from a form)
$target = 'harry_0123';

// Check Target
if ( isset($json_arr[$target]) ) {

    // Deleting
    unset($json_arr[$target]);
}