2016-05-13 48 views
0

让我们有一个包含JSON的file.json,例如,在不更改PHP格式的情况下读写JSON文件

{ 
    "first-key": "foo", 
    "second-key": "bar" 
} 

现在,如果我使用PHP内置函数编码和解码JSON,它将更改格式。有没有办法如何做到这一点,而无需重新格式化JSON?

我需要添加一个密钥,并在Git中提交文件。因此,我想避免改变没有真正改变的线条。

+0

'无Chainging Formatting'手段?? –

+0

没有改变缩进,行结束等 –

回答

0
<?php 

$json = '{ 
    "first-key": "foo", 
    "second-key": "bar" 
}'; 

$arr = json_decode($json, true); 

echo "<pre>"; 
print_r($arr); 
echo "</pre>"; 

$arr_new = array("newKey"=>$arr); 

$json_new = json_encode($arr_new); 

echo $json_new; 

?> 
1

JSON_PRETTY_PRINT标志与您在不手动编辑json编码字符串的情况下所得到的一样近。它看起来应该适用于你的例子。

<?php 
$json = '{ 
    "first-key": "foo", 
    "second-key": "bar" 
}'; 

$arr = json_decode($json, true); 

$arr['second-key'] = 'baz'; 

print_r(json_encode($arr, JSON_PRETTY_PRINT)); 

=

{ 
    "first-key": "foo", 
    "second-key": "baz" 
} 
+0

我知道关于国旗。它仍然不能解决问题。它通过其规则重新格式化整个文件。 –

相关问题