循环遍历数组/对象,没有键名,只有索引



我使用json_encode在我的数据库中存储了一个数组,并在我想将其检索回时对其运行json_decode,但是我无法对其运行foreach以访问我需要显示在视图中的图像 URL。

以下是以下$new_invoices = json_decode($invoices); var_dump($new_invoices);的结果

这输出:

array(2) { 
[0]=> string(66) "/images/uploaded-invoices/1-logo-square-highres.png-1482788616.png" 
[1]=> string(58) "/images/uploaded-invoices/1-logo-square.png-1482788616.png" 
}

我一直试图使用以下语句从中获取图像 URL:

foreach ($new_invoices as $value) {
echo($value);
}

这不断抛出Invalid argument supplied for foreach()

有没有办法循环并抓取这些 URL?

很明显错误在哪里。您正在尝试循环 StdClass 对象。 当你调用json_decode()时,它将解析字符串并返回一个对象。如果你需要一个数组,那么提供 - true - 作为第二个参数。

json_decode($invoices,真);

其余代码应该可以正常工作。

最新更新