【发布时间】:2011-12-09 15:21:32
【问题描述】:
我正在尝试使用可编辑的表格并让它工作,除非传递给保存函数的数组值包含双引号。错误发生在foreach循环中
foreach($saveArray as $rowId=>$row) {
可能包含双引号的是值(不是键),实际错误是:
Warning: Invalid argument supplied for foreach()
解决这个问题的最佳方法是什么,以某种方式转义它们,将它们更改为 " 代码,更改循环的工作方式?
编辑:
抱歉,问题实际上是 json_decode 函数和双引号值,而不是返回数组。
适用于非双引号条目
json 看起来像
{"2":{"component":"8\"", ...
所以它被转义了,但它没有解码成一个数组
【问题讨论】:
-
你确定
$saveArray是你代码中的一个数组吗? -
Invalid argument supplied for foreach()表示$saveArray不是数组。向我们展示$saveArray中的var_dump。 -
在这种情况下,json_decode 函数出现故障,出于同样的原因(双引号),对于没有双引号的条目,一切正常
-
在这种情况下,我们需要有关您的问题/代码的更多信息...
-
我已经编辑了问题,当双引号存在时,json_decode 不返回数组
标签: php arrays foreach double-quotes