【发布时间】:2020-06-26 06:48:06
【问题描述】:
我有这样的数据集:
$data[] =
Array
(
[u_d] => ABCDEF
[0] => Array
(
[one] => oned
[two] => 222
[three] => three
[four] => 444
[five] => 555
[events] => Array
(
[0] => Array
(
[feed] => Array
(
[0] => Array
(
[date-time] => 191018080000
[sub-type] => abc
[comments] => test comments
[parameter-list] => para1, para2
[state] => bad
[value] => 1000
)
)
)
)
)
[1] => Array
(
[one] => two
[two] => 224562
[three] => thyyree
[four] => 445344
[five] => 5345355
[events] => Array
(
)
)
)
我只需要获取事件并删除空事件。但是首先我尝试获取类似这样的事件,但它给出了一个错误。
$new = [];
for($i=0 ; $i < count($data)-1 ; $i++)
{
if(count($data[$i]['events']) > 0)
{
$new[] = $data[$i]['events'];
}
}
print_r ($new);
但它给了我一个错误:不能使用 Illuminate\Http\JsonResponse 类型的对象作为数组
谁能帮我解决这个问题?
谢谢
【问题讨论】:
-
json_decode($data)首先你需要先解码json。之后你可以用 php 的方式访问它们的值。 -
嗨,我试图解码 json,它给了我消息":"json_decode() 期望参数 1 是字符串,给定数组" ...我也尝试从字符串转换为数组这 $data = array($data); 但不工作
-
请提供带有行号的完整错误消息。还要在您的问题中指定行。
-
试试这样
$data[$i]->events -
我尝试了 $data[$i]->events,它给了我这样的错误:尝试获取非对象的属性","status_code":
标签: php arrays laravel error-handling