如何在 laravel 中解析包含 json 数组的 json 对象

How to parse json object containing json array in laravel

我已经为自己构建了一个 API 来 return 一些数据,这些数据是 return 以 json 形式编辑的

{
[
    {
        "name": "John Doe",
        "year": "1st",
        "curriculum": "Arts"
    }
]}

问题是我无法访问此数据的任何字段,我一直在通过这些输入在 REST 客户端上尝试它

{
"test" : {
[
    {
        "name": "John Doe",
        "year": "1st",
        "curriculum": "Arts"
    }
]}}

"test" 是从 android 传递到 API 的输入名称。

当我像上面那样发出请求时,我什么也没得到,但是当我做类似

的事情时
{
"test" : 
[
    {
        "name": "John Doe",
        "year": "1st",
        "curriculum": "Arts"
    }
]}

用这段代码处理它

$test = $request->input('test');
    $final_Length_Array = array('list', $test);
    $var = $final_Length_Array[1][0]['name'];

    return response()->json([
        'state' => '1',

        'test' => $var
    ]);

我得到了我想要的值,现在是否有人可以告诉我如何处理它?

这是无效的JSON值:

{
  "test" : {
    [
      {
        "name": "John Doe",
        "year": "1st",
        "curriculum": "Arts"
      }
    ]
  }
}

test 键的值是一个对象,它应该包含 key-value 对,而不是列表。

将来您可以使用在线验证器来检查给定的字符串是否为 JSON 值,例如https://jsonlint.com/。也请查看 JSON 规范 a thttp://www.json.org/ 看看它应该是什么样子。