dongshang1934 2015-11-13 16:24
浏览 21

php merge_array表示JSON数据不是数组

Having an issue here. When I attempt to do this:

foreach ($validation_fields as $val) {
        $rule = json_decode($val['rules'], true);
        $key = 'fields[' . $val['group_id'] . '][' . $val['field_id'] . ']';
        if (array_key_exists($key, $rules)) {
        array_merge($rules[$key], $rule);
        }
    }

PHP throws an error back at me saying that argument 2 is not an array, however, when I dump $rule or use is_array($rule), it checks out as being an array. I am so confused.

the json I am decoding is:

'{"format": {"rule": ["matches","/[0-9]{9}/"], "negate": true,"message": "Apps"}}'

var_dump(json_decode($rule)) is:

array
  'format' => 
    array
      'rule' => 
        array
          0 => string 'matches' (length=7)
          1 => string '/[0-9]{9}/' (length=10)
      'negate' => boolean true
      'message' => string 'Apps' (length=30)

array_merge() [function.array-merge]: Argument #2 is not an array on line 197 in ....

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥20 腾讯企业邮箱邮件可以恢复么
    • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
    • ¥15 错误 LNK2001 无法解析的外部符号
    • ¥50 安装pyaudiokits失败
    • ¥15 计组这些题应该咋做呀
    • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
    • ¥15 让node服务器有自动加载文件的功能
    • ¥15 jmeter脚本回放有的是对的有的是错的
    • ¥15 r语言蛋白组学相关问题
    • ¥15 Python时间序列如何拟合疏系数模型