读取文件渲染
通过file_get_contents将整个文件读入一个字符串
json_decode将json数据转为数组,对JSON 格式的字符串进行解码
echo "Hello!
";$json_string = file_get_contents('./info.json');$data = json_decode($json_string, true);var_dump($data["company"]['value']); // print_r($data["company"]['value']);
json模拟数据
{ "enterprise_type": { "type": "企业类型", "value": "企业" }, "credit": { "type": "统一社会信用代码", "value": "8848668485548" }, "company": { "type": "公司名称", "value": "雪梨科技" }, "Range": { "type": "经营范围", "value": "" }, "address": { "type": "地址", "value": "北北市西西村东东街001号" }, "account_opening": { "type": "开户行", "value": "农农银行股份有限公司西西村支行" }}
输出
增加字段
向info.json文件增加一个describe字段
file_put_contents(文件,值)将一个字符串写入文件
echo "Hello!
";$json_string = file_get_contents('./info.json');$data = json_decode($json_string, true);$code = "describe";//动态值$data[$code] = array("type" => "描述", "value" => "Hello PHP!"); //增加$json_string = json_encode($data);file_put_contents("./info.json", $json_string);var_dump($data);
此时发现页面正常输出并成功添加了
但是打开json文件,发现是一些看不懂的格式。
这是由于json_encode来处理中文的时候, 中文都会被编码, 变成不可读的
解决办法,升级php
检查PHP版本
$ php -v
PHP5.4以上新增了一个选项: JSON_UNESCAPED_UNICODE,JSON不编码Unicode
修改json_encode,添加 JSON_UNESCAPED_UNICODE
$json_string = json_encode($data,JSON_UNESCAPED_UNICODE);
修改
php修改json数据某个字段
$data[$code]["value"] = "哈喽!你好";//修改
完整代码
echo "Hello!
";$json_string = file_get_contents('./info.json');$data = json_decode($json_string, true);$code = "describe"; //动态值// $data[$code] = array("type" => "描述", "value" => "Hello PHP!"); //增加$data[$code]["value"] = "哈喽!你好"; //修改$json_string = json_encode($data, JSON_UNESCAPED_UNICODE);file_put_contents("./info.json", $json_string);var_dump($data); // print_r($data["company"]['value']);
来源地址:https://blog.csdn.net/qq_50654350/article/details/127734027