我是PHP和JSON的新手,我试图在运行时使用php向json文件添加属性。
例如,json当前如下所示:
this.request1().pipe(
switchMap(result1 => this.request2(result1.neededProp))
).subscribe(result2 => console.log(result2))
然后,我希望能够(使用php),参考该文件并按如下所示对其进行更改:
[
{
"name":"john"
},
{
"name": "james"
}
]
此刻,当我得到json的内容时:
[
{
"name":"john",
"Round1Prediction":"7"
},
{
"name": "james"
}
]
输出如下:
$jsonPlayers = json_decode($strJsonFileContents, true);
var_dump($jsonPlayers); // print array
可视化我想做什么(通过手动键入): 数组(4)
array(4)
{
[0]=> array(1){
["name"]=>string(1) "q"
}
[1]=> array(1){
["name"]=>string(1) "w"
}
[2]=> array(1){
["name"]=>string(1) "e"
}
[3]=> array(1){
["name"]=>string(2) "rt"
}
}
那么我将如何推出多余的物品?我已经尝试过了...:
{
[0]=> array(1){
["name"]=>string(1) "q"
["Round1Prediction"]=>string(1) "5"
}
[1]=> array(1){
["name"]=>string(1) "w"
}
[2]=> array(1){
["name"]=>string(1) "e"
}
[3]=> array(1){
["name"]=>string(2) "rt"
}
}
...以及其他几次失败的尝试。有人可以帮忙吗?我确实尝试格式化此问题,以使其更容易理解,但如有必要,可以尝试解释更多。
tldr我正在尝试将关联数组推入另一个数组,我该怎么做呢?还有其他方法吗?甚至有可能吗?
非常感谢。
答案 0 :(得分:0)
您应该可以直接设置它,而不是直接输入-尝试
$jsonPlayers[0][$attrName] = $value;