如何从地址中取省份城市名称?
例如,已将中国所有省份,城市已存在在数组region_list中,如何从’广东省广州市天河区天河公园'中取出‘广东省‘,’广州市‘?$region_list[$key]['id'] = $key; //$key是从0开始的连续自然数
$region_list[$key]['parent'] = ''; //当name为省份时为0,当name为城市时为所属省份的id
$region_list[$key]['name'] = ''; //省份或城市的名称
例如,已将中国所有省份,城市已存在在数组region_list中,如何从’广东省广州市天河区天河公园'中取出‘广东省‘,’广州市‘?$region_list[$key]['id'] = $key; //$key是从0开始的连续自然数
$region_list[$key]['parent'] = ''; //当name为省份时为0,当name为城市时为所属省份的id
$region_list[$key]['name'] = ''; //省份或城市的名称
region_list['name']中的省份,城市,是没有'省','市'等词的,只有'广东','广州','湖南',‘长沙'....
附部分数据:$region[1]['id'] = '1';
$region[1]['parent'] = '0';
$region[1]['id'] = '中国';$region[2]['id'] = '2';
$region[2]['parent'] = '1';
$region[2]['id'] = '北京';$region[3]['id'] = '3';
$region[3]['parent'] = '1';
$region[3]['id'] = '安徽';$region[4]['id'] = '4';
$region[4]['parent'] = '1';
$region[4]['id'] = '福建';$region[5]['id'] = '5';
$region[5]['parent'] = '1';
$region[5]['id'] = '甘肃';....
$region[1125]['id'] = '1125';
$region[1125]['parent'] = '139';
$region[1125]['id'] = '博野县';$region[1126]['id'] = '1126';
$region[1126]['parent'] = '139';
$region[1126]['id'] = '雄县';$region[1127]['id'] = '1127';
$region[1127]['parent'] = '140';
$region[1127]['id'] = '运河区';$region[1128]['id'] = '1128';
$region[1128]['parent'] = '140';
$region[1128]['id'] = '新华区';$region[1129]['id'] = '1129';
$region[1129]['parent'] = '140';
$region[1129]['id'] = '泊头市';
...$region[2722]['id'] = '2722';
$region[2722]['parent'] = '322';
$region[2722]['id'] = '青羊区';$region[2723]['id'] = '2723';
$region[2723]['parent'] = '322';
$region[2723]['id'] = '锦江区';$region[2724]['id'] = '2724';
$region[2724]['parent'] = '322';
$region[2724]['id'] = '金牛区';$region[2725]['id'] = '2725';
$region[2725]['parent'] = '322';
$region[2725]['id'] = '武侯区';$region[2726]['id'] = '2726';
$region[2726]['parent'] = '322';
$region[2726]['id'] = '成华区';...
要不所有数据挤在一个数组,无论如何,效率是个问题。
$region[1]['id'] = '1';
$region[1]['parent'] = '0';
$region[1]['name'] = '广东';$region[2]['id'] = '2';
$region[2]['parent'] = '1';
$region[2]['name'] = '广州';$region[3]['id'] = '3';
$region[3]['parent'] = '1';
$region[3]['name'] = '深圳';$str = '广东省广州市天河区天河公园';foreach($region as $k=>$v)
{
$patt[$v['name']] = $v['id'];
}preg_match_all("/".implode('|',array_keys($patt))."/",$str,$m);foreach($m[0] as $v){
echo "id为{$patt[$v]}:$v<br/>";
}