我有一个Json对象
{"cms18.test.silverbee.nl":{"domain":"cms18","template":"default"},"dmmd.test.silverbee.nl":{"domain":"dmmd","template":"default"},"opmaat.test.silverbee.nl":{"domain":"opmaat","template":"opmaat"},"opmaatdebiteurenadvies.nl":{"domain":"opmaat","template":"opmaat"},"navbar.test.silverbee.nl":{"domain":"navbar","template":"default"},"test18.test.silverbee.nl":{"domain":"test18testsilverbeenl","template":"test"},"huisartsplus.test.silverbee.nl":{"domain":"huisartsplustestsilverbeenl","template":"huisartsplus"},"robertenrademaker.test.silverbee.nl":{"domain":"robertenrademakertestsilverbeenl","template":"robert-en-rademaker"},"tilburg.test.silverbee.nl":{"domain":"tilburgtestsilverbeenl","template":"default"},"cbk-groningen.test.silverbee.nl":{"domain":"cbk_groningentestsilverbeenl","template":"cbk-groningen"},"getbusyinc.test.silverbee.nl":{"domain":"getbusyinctestsilverbeenl","template":"getbusyinc"}}
我想添加/推送我制作的新php字符串,我就这样了,我不确定它是否正确。
<?php
$list= file_get_contents('list.json');
$list = json_decode($list, true);
include('veranderen.php');
// Het toevoegen van een nieuwe URL
$url = $_POST['new_url'];
$t_d = $_POST['t_d'];
$t_t = $_POST['t_t'];
$str[$url] = "{domain:".$t_d.","."template:".$t_t."},";
include('delete.php');
include('interface.php');
include('lijst.php');
?>
答案 0 :(得分:0)
我认为你可以尝试这样的事情
<?php
$list= file_get_contents('list.json');
$list = json_decode( $list, true );
include('veranderen.php');
$url = $_POST['new_url'];
$t_d = $_POST['t_d'];
$t_t = $_POST['t_t'];
$tmp=array();
$tmp[ $url ] = array( 'domain'=>$t_d, 'template'=>$t_t );
$list = json_encode( array_merge( $list, $tmp ), JSON_FORCE_OBJECT );
$bytes=file_put_contents('list.json', $list, FILE_TEXT )
include('delete.php');
include('interface.php');
include('lijst.php');
?>
答案 1 :(得分:0)
在PHP中解码json字符串时,会得到一个关联数组。
所以你可以
$list[$url] = array("domain" => $t_d, "template" => $t_t);
然后对其进行编码并重写list.json。
答案 2 :(得分:0)
我在示例代码中看到您正在使用字符串连接构建JSON fileData = File.ReadAllLines("textFile.txt").Where(i >= !String.IsNullOrEmpty(i))
我建议您了解PHP的内置$str[$url] = "{domain:".$t_d.","."template:".$t_t."},";
和json_encode()
函数 - 这些函数允许您使用JSON而无需使用实际的字符串值。
构建要作为普通PHP数组或对象结构输出的数据结构,然后将其传递给json_decode()
以获取完成的字符串。
您使用预先存在的字符串启动了问题。如果你已经在PHP代码中构建了它,那么我建议重新编码将其构建为PHP数组,并在最终输出时仅使用json_encode()
。这将允许您在程序中的任何位置添加或更改数据。
如果您从其他地方收到了JSON字符串(即您已经获得了JSON格式的字符串),那么首先使用json_encode()
将其转换为PHP数组/对象结构,然后使用它在PHP程序中使用该表单,然后在准备好输出时再使用json_decode()
将其重新转换为JSON字符串。