php - PHP array_walk_recursive 替换错误值
问题描述
我的数据源是我 json_decode($origJason,true) 到数组 $j1 的这个 JSON。
我无法控制我得到的 JSON。
{
"A": {
"This": "AAA"
},
"B": {
"That": ["CCC", "DDD"]
}
}
数组看起来像这样
Array
(
[A] => Array
(
[This] => AAA
)
[B] => Array
(
[That] => Array
(
[0] => CCC
[1] => DDD
)
)
)
我想用“ZZZ”替换键“This”的值
function array_replacing(&$item, $key){
if($key == 'This')
$item = 'ZZZ';
}
array_walk_recursive($j1, 'array_replacing');
该函数还替换“That”数组中的第一个值。
Array
(
[A] => Array
(
[This] => ZZZ
)
[B] => Array
(
[That] => Array
(
[0] => ZZZ
[1] => DDD
)
)
)
当我尝试 json_decode($origJason,true) 时,我遇到了这个问题。
当我尝试 json_decode($origJason,false) 时,没有替代品。
我不知道这里发生了什么以及如何解决这个问题。
将不胜感激的解决方案。
谢谢!
解决方案
推荐阅读
- excel - 使用命令按钮将所有图片压缩为电子邮件大小 (96)ppi
- javascript - 移动到滚动条中的元素 i
- vb.net - 从 MS SQL varbinary 保存本地文件
- mysql - 将 4 个表连接在一起并检查总数不匹配的位置
- javascript - 将 Onclick 按钮事件更改为页面加载 Javascript
- java - 如何避免请求的资源上不存在 Access-Control-Allow-Origin 标头
- javascript - 使用 body.json() 解析来自 http.get() 的响应时出错
- esp32 - micropython ds18x20 错误的 rom/地址/序列号
- reactjs - 有没有办法解决这个条件挂钩解决方法?
- swift - 手动将 JSON 解析为 Struct 的对象