拆分JSON数据,只获取变量名称


Split JSON data and only get the variables names

我正在制作一个CMS,您必须在其中放入自己的JSON数据字符串。像这个

然后转到一个php文件。但在那个文件中,我想拆分数据字符串

来自这样的东西:

 {"main_object": {"audio":"nl", "title":"Opdracht 1", "vraag":"[0, 1, "a"]", "antwoord"["yes", "no", 0]" }}

到这个

["audio", "title", "vraag", "antwoord"]

使用json_decode,注意,您的json字符串不正确:

$json_string = '{"main_object": {"audio":"nl", "title":"Opdracht 1", "vraag":[0, 1, "a"], "antwoord":["yes", "no", 0]}}';
// Add TRUE to force an array, not an object
$array = json_decode($json_string, TRUE);
print_r(array_keys($array['main_object']));

它适用于此代码。我试过了。

假设以下PHP代码:

 <?php
 $JSONData = '{"main_object": {"audio":"nl", "title":"Opdracht 1", "vraag":"[0, 1, "a"]", "antwoord"["yes", "no", 0]" }}'; //In reality you'll be getting the JSON data from the form rather than assigning it here.
  $arrayData = json_decode($JSONData, true);
  if ($arrayData !== null 
      && is_array($arrayData)
      && isset($arrayData["main_object"])
      && is_array($arrayData["main_object"])) { //JSON was valid and in the correct format
      $usableData = array_keys($arrayData["main_object"]);
      //Do whatever you need to do with your $usableData
  } else {
     //Handle badly formatted data here.
  }