public static function reloadAreaList($areaList) { // var_export($areaList); $dataList = array(); foreach ($areaList as $area) { $aM = (string) $area['areaMain']; $aS = (string) $area['areaSecond']; $aT = (string) $area['areaThird']; // $aS= $aS==0?$aM:$aS; // $aT= $aT==0?($aS==0?$aM:$aS):$aT; if (!array_key_exists($aM, $dataList)) { $dataList[$aM] = array(); $dataList[$aM]['areaID'] = $aM; $dataList[$aM]['areaName'] = AreaHandler::loadAreaNameById($aM); $dataList[$aM]['areaNameLocal'] = AreaHandler::loadAreaNameById($aM); $dataList[$aM]['areaNameList'] = array(AreaHandler::loadAreaNameById($aM)); $dataList[$aM]['areaIDList'] = AreaHandler::getAreaInfo($dataList[$aM]['areaID']); $dataList[$aM]['childs'] = array(); } if ($aS > 0) { $dataList[$aM]['childs'][$aM] = array(); $dataList[$aM]['childs'][$aM]['areaID'] = $aM; $dataList[$aM]['childs'][$aM]['areaName'] = AreaHandler::loadAreaNameById($aM); $dataList[$aM]['childs'][$aM]['areaNameLocal'] = '全部'; $dataList[$aM]['childs'][$aM]['areaNameList'] = $dataList[$aM]['areaNameList']; $dataList[$aM]['childs'][$aM]['areaIDList'] = AreaHandler::getAreaInfo($dataList[$aM]['childs'][$aM]['areaID']); $dataList[$aM]['childs'][$aM]['childs'] = array(); if (!array_key_exists($aS, $dataList[$aM]['childs'])) { $dataList[$aM]['childs'][$aS] = array(); $dataList[$aM]['childs'][$aS]['areaID'] = $aS == 0 ? $aM : $aS; $dataList[$aM]['childs'][$aS]['areaName'] = AreaHandler::loadAreaNameById($aS); $dataList[$aM]['childs'][$aS]['areaNameLocal'] = AreaHandler::loadAreaNameById($aS); $dataList[$aM]['childs'][$aS]['areaNameList'] = array_merge($dataList[$aM]['areaNameList'], array($dataList[$aM]['childs'][$aS]['areaNameLocal'])); $dataList[$aM]['childs'][$aS]['areaIDList'] = AreaHandler::getAreaInfo($dataList[$aM]['childs'][$aS]['areaID']); $dataList[$aM]['childs'][$aS]['childs'] = array(); } if ($aT > 0) { $dataList[$aM]['childs'][$aS]['childs'][$aS] = array(); $dataList[$aM]['childs'][$aS]['childs'][$aS]['areaID'] = $aS; $dataList[$aM]['childs'][$aS]['childs'][$aS]['areaName'] = AreaHandler::loadAreaNameById($aS); $dataList[$aM]['childs'][$aS]['childs'][$aS]['areaNameLocal'] = '全部'; $dataList[$aM]['childs'][$aS]['childs'][$aS]['areaNameList'] = $dataList[$aM]['childs'][$aS]['areaNameList']; $dataList[$aM]['childs'][$aS]['childs'][$aS]['areaIDList'] = AreaHandler::getAreaInfo($dataList[$aM]['childs'][$aS]['childs'][$aS]['areaID']); $dataList[$aM]['childs'][$aS]['childs'][$aT] = array(); $dataList[$aM]['childs'][$aS]['childs'][$aT]['areaID'] = $aT == 0 ? $aS == 0 ? $aM : $aS : $aT; $dataList[$aM]['childs'][$aS]['childs'][$aT]['areaName'] = AreaHandler::loadAreaNameById($aT); $dataList[$aM]['childs'][$aS]['childs'][$aT]['areaNameLocal'] = AreaHandler::loadAreaNameById($aT); $dataList[$aM]['childs'][$aS]['childs'][$aT]['areaNameList'] = array_merge($dataList[$aM]['childs'][$aS]['areaNameList'], array($dataList[$aM]['childs'][$aS]['childs'][$aT]['areaNameLocal'])); $dataList[$aM]['childs'][$aS]['childs'][$aT]['areaIDList'] = AreaHandler::getAreaInfo($dataList[$aM]['childs'][$aS]['childs'][$aT]['areaID']); } } } $outType = W2HttpRequest::getRequestString('outtype'); if ($outType == 'array') { $result = array(); foreach ($dataList as $data) { $data['subs'] = array(); foreach ($data['childs'] as $areaSecond => $da) { $da['subs'] = array(); foreach ($da['childs'] as $areaThird => $d) { $da['subs'][] = $d; } unset($da['childs']); $data['subs'][] = $da; } unset($data['childs']); $result[] = $data; } return Utility::getArrayForResults(RUNTIME_CODE_OK, '', $result); } return Utility::getArrayForResults(RUNTIME_CODE_OK, '', $dataList); }
/** * 取得地区所在区ID */ public static function getAreaThird($p_areaId) { return AreaHandler::getAreaInfo($p_areaId)['areaThird']; }