【问题标题】:Getting value of an item in json [duplicate]在json中获取项目的价值[重复]
【发布时间】:2021-11-26 19:28:51
【问题描述】:

我想从 json 中获取选项键的值, 例如:下面的数组应该返回 12 我尝试了以下代码,但总是得到“未定义的数组键 0”

    {{ $question->options[0]['option'] }}

数据存储在mysql数据库的json列中,laravel模型是Question,column是options我可以得到列但是我在得到列中的数据后无法获取option键的值,我不想用php foreach

{
    "1": {
        "option": "12",
        "correct": "1"
    }
}


Array ( [1] => Array ( [option] => 12 [correct] => 1 ) ) 1

【问题讨论】:

  • 示例中的键是“1”,而不是“0”
  • 即使 {{ $question->options[1]['option'] }} 也不起作用

标签: php arrays json laravel


【解决方案1】:

我知道了,经过彻底的尝试,我能够做到这一点

array_values($question->options)[0]['option']

【讨论】:

    【解决方案2】:

    首先你必须用json_decode解析数据

    $question ='{
                "1": {
                    "option": "12",
                    "correct": "1"
                }
            }';
            $toArray = json_decode($question);
            print_r($toArray->{1}->option); // Accessing invalid object properties
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多