我正在制作一个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.
}