{
"line1": 12,
"line2": 4,
"line3": 66,
"line4": false,
"line5": true,
"line6": [
{
"line7": "false",
"line8": "true"
},
{
"line9": "false",
"line10": "false"
}
],
"line11": 0,
"line12": 0,
使用json_decode,我可以使用以下方法从数组中提取元素:
$ showline1 = $ obj-> line1;
$ showline2 = $ obj-> line2;
但是如何提取line7,line8,line9和line10?我尝试使用:
$ showline7 = $ obj-> line6-> line7; 但它没有奏效。
答案 0 :(得分:1)
如果仔细观察“line6”里面有多个元素,那么基本上你在用json_decode解码时会得到数组。简而言之,你需要使用$ data-> line6 [0]。要获得所有内部元素,您需要显然使用循环。
答案 1 :(得分:0)
line6是一个数组,因此您需要目标索引 尝试
$showline7 = $obj->line6[0]->line7;
希望它有所帮助:)
答案 2 :(得分:0)
你有没有尝试过:
json_decode($your_json_string,true);
这将返回一个数组而不是object,你可以得到这样的line7值:
$obj["line6"][0]["line7"]
或者作为您的对象,您可以获得如下的line7值:
$obj->line6[0]->line7
答案 3 :(得分:0)
我想在这里添加另一个答案,因为代码很长。
这是我的测试,它运行正常。请看一下。
MyModel.forge()
.query(function(qb) {
qb.whereRaw("end_time >= now()")
})