2016-12-26 35 views
1

我使用json_encode存储了数据库中的数组,并在其上运行了json_decode,但我无法在其上运行foreach访问我需要在我的视图中显示的图像网址。在没有密钥名称的情况下循环访问数组/索引

这里是从以下$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?

+0

该代码看起来很好。如果你在var_dump中获得一个数组,那么它应该是一个有效的foreach参数。 – CUGreen

+1

根据您提供的代码应该工作 – Dan

+0

'$ new_invoices = json_decode($ invoices,true); ' – Eugen

回答

0

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

json_decode($ invoices,true);

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

+0

我也试过使用'json_decode($ invoices,true);'但它仍然抛出相同的错误。我想我会创建一个相关的表格来存储这些表格。 – user2340791

相关问题