企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持知识库和私有化部署方案 广告
| 通过json格式实现三级联动 | | | --- | --- | >json文件有时候可以看做是一个小型的数据库,尤其是一些基本不会变的信息,放到json文件当中利于我们保管,当读取数据时我们就需要对json文件进行操作,得到我们想要的数据。 >在根据省市县多级联动时,我们通过前台的操作,向后台发出了一个ajax请求,传递的参数是三个code,也就是省市县的代码,而我们希望通过code得到name,也就是获取到省市县的名称,这时候我们可以这样操作 ``` public function areaAjax() { if (request()->isAjax()) { $fileName = '../public/static/index/static/area.json'; $string = file_get_contents($fileName); $data = json_decode($string,true); $arr = array(); foreach ($data as $key => $value) { if ($value['code']==input('post.province_id')) { $arr['province_name'] = $value['name']; foreach ($value['children'] as $key1 => $value1) { if ($value1['code']==input('post.city_id')) { $arr['city_name'] = $value1['name']; foreach ($value1['children'] as $key2 => $value2) { if ($value2['code']==input('post.county_id')) { $arr['county_name'] = $value2['name']; } } } } } } return $arr; } else { $this->redirect("admin/cars/lst"); } } [ { "code": "110000", "name": "北京市", "children": [ { "code": "110100", "name": "市辖区", "children": [ { "code": "110101", "name": "东城区" }, { "code": "110102", "name": "西城区" }, { "code": "110105", "name": "朝阳区" }, { "code": "110106", "name": "丰台区" }, { "code": "110107", "name": "石景山区" }, { "code": "110108", "name": "海淀区" }, { "code": "110109", "name": "门头沟区" }, { "code": "110111", "name": "房山区" }, { "code": "110112", "name": "通州区" }, { "code": "110113", "name": "顺义区" }, { "code": "110114", "name": "昌平区" }, { "code": "110115", "name": "大兴区" }, { "code": "110116", "name": "怀柔区" }, { "code": "110117", "name": "平谷区" } ] }, { "code": "110200", "name": "县", "children": [ { "code": "110228", "name": "密云县" }, { "code": "110229", "name": "延庆县" } ] } ] }, { "code": "120000", "name": "天津市", "children": [ { "code": "120100", "name": "市辖区", "children": [ { "code": "120101", "name": "和平区" }, { "code": "120102", "name": "河东区" }, { "code": "120103", "name": "河西区" }, { "code": "120104", "name": "南开区" }, { "code": "120105", "name": "河北区" }, { "code": "120106", "name": "红桥区" }, { "code": "120110", "name": "东丽区" }, { "code": "120111", "name": "西青区" }, { "code": "120112", "name": "津南区" }, { "code": "120113", "name": "北辰区" }, { "code": "120114", "name": "武清区" }, { "code": "120115", "name": "宝坻区" }, { "code": "120116", "name": "滨海新区" } ] }, { "code": "120200", "name": "县", "children": [ { "code": "120221", "name": "宁河县" }, { "code": "120223", "name": "静海县" }, { "code": "120225", "name": "蓟县" } ] } ] } ] ```