Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用PHP更新/编辑JSON_Php_Json - Fatal编程技术网

如何使用PHP更新/编辑JSON

如何使用PHP更新/编辑JSON,php,json,Php,Json,请帮帮我 JSON: 如何从更新嵌套对象中的值 "2":{ "TchID":"G141843", "TchData":{ "TchID":"G141843", "TchNama":"G141843", "TchPassword":22932450 } }

请帮帮我

JSON:

如何从更新嵌套对象中的值

"2":{
"TchID":"G141843",
"TchData":{
           "TchID":"G141843",
           "TchNama":"G141843",
           "TchPassword":22932450
}
}

在php脚本中

你看,我想把TchNama:G141843改成TchNama:Alex J

这是我的密码

<?php
$data = '{"1":{"TchID":"G303992","TchData":{"TchID":"G303992","TchNama":"G303992","TchPassword":43511824}},"2":{"TchID":"G141843","TchData":{"TchID":"G141843","TchNama":"G141843","TchPassword":22932450}}}';

$guru = json_decode($data);
foreach ($guru as $items){
if($items['TchID'] == 'G303992'){

// i dont know how to change $items['TchData']['TchNama'] = 'G141843' to 'Alex J'

$viewchange = json_encode($guru);
echo $viewchange;
}
}
?>
请试试这个

$data = '{"1":{"TchID":"G303992","TchData":{"TchID":"G303992","TchNama":"G303992","TchPassword":43511824}},"2":{"TchID":"G141843","TchData":{"TchID":"G141843","TchNama":"G141843","TchPassword":22932450}}}';
$guru = json_decode($data);
var_dump($guru);
foreach ($guru as $items) {
    if ($items->TchID == 'G141843') {
        $items->TchData->TchNama = "Alex J";
    }
}
var_dump($guru);
$viewchange = json_encode($guru);
echo $viewchange;
请试试这个

$data = '{"1":{"TchID":"G303992","TchData":{"TchID":"G303992","TchNama":"G303992","TchPassword":43511824}},"2":{"TchID":"G141843","TchData":{"TchID":"G141843","TchNama":"G141843","TchPassword":22932450}}}';
$guru = json_decode($data);
var_dump($guru);
foreach ($guru as $items) {
    if ($items->TchID == 'G141843') {
        $items->TchData->TchNama = "Alex J";
    }
}
var_dump($guru);
$viewchange = json_encode($guru);
echo $viewchange;

您可以使用json_encode$,TRUE将json字符串转换为数组对象

然后,如果通过数组\ U键获得键,则可以循环对象的键

然后,您可以使用单独的变量来迭代主要对象属性并更改该对象,或者直接访问主要对象并在源位置进行更改,这就是我在下面所做的:

$data = '{"1":{"TchID":"G303992","TchData":{"TchID":"G303992","TchNama":"G303992","TchPassword":43511824}},
          "2":{"TchID":"G141843","TchData":{"TchID":"G141843","TchNama":"G141843","TchPassword":22932450}}}';

$guru = json_decode($data, true);

$keys = array_keys($guru);

foreach ($keys as $key) {
    if($guru[$key]['TchID'] == 'G303992'){
        $guru[$key]["TchNama"] = "Alex J";
    }
}

$viewchange = json_encode($guru);
echo $viewchange;

您可以使用json_encode$,TRUE将json字符串转换为数组对象

然后,如果通过数组\ U键获得键,则可以循环对象的键

然后,您可以使用单独的变量来迭代主要对象属性并更改该对象,或者直接访问主要对象并在源位置进行更改,这就是我在下面所做的:

$data = '{"1":{"TchID":"G303992","TchData":{"TchID":"G303992","TchNama":"G303992","TchPassword":43511824}},
          "2":{"TchID":"G141843","TchData":{"TchID":"G141843","TchNama":"G141843","TchPassword":22932450}}}';

$guru = json_decode($data, true);

$keys = array_keys($guru);

foreach ($keys as $key) {
    if($guru[$key]['TchID'] == 'G303992'){
        $guru[$key]["TchNama"] = "Alex J";
    }
}

$viewchange = json_encode($guru);
echo $viewchange;

将修改后的数组重新编码为JSON并在循环后输出。当然,将修改后的数组重新编码为JSON并在循环后输出它。@my0940确定吗?我在这里测试过:@my0940你确定吗?我在这里测试过: