2015-06-14 19 views
0

假如我有以下的JSON文件:更新的值成JSON文件中的PHP

{ 
    "infos": { 
     "name": "Logo changed." 
    }, 
    "datas": [ 
     {...} 
    ] 
} 

我想改变的name值。

所以,我尝试这样做:

$to_replace = 'New logo change.'  
$datas['infos']['name'][0] = $to_replace; 

但在那之后我的JSON不妙:

{ 
    "infos": { 
     "0": { 
      "name": "New logo change." 
     }, 
     "name": "Logo changed." 
    }, 
    "datas": [ 
     {...} 
    ] 
} 

为什么它不工作吗?

谢谢。

+1

只需放下'[0]':'$ datas ['infos'] ['name'] = $ to_replace;'应该做诀窍。 – Quasdunk

回答

0

取出[0],你不需要它:

$datas['infos']['name'] = $to_replace; 

PHP确实认为你有一个name"0"因此增加了一个为您服务。

+0

非常感谢。 – teamo

0

更换

$to_replace = 'New logo change.'  
$datas['infos']['name'][0] = $to_replace; 

随着

$to_replace = 'New logo change.'  
$datas['infos']['name'] = $to_replace; 
0

你可以试试这个代码(不[0]

$to_replace = 'New logo change.'  
$datas['infos']['name'] = $to_replace; 

在PHP中,JSON对象,如果你使用一个号码,它将使用作为新密钥而不是“第一个元素“