$MapString="116.310634759589,39.990045537862,46#116.310371735567,39.989799696735005,44#116.310489333624,39.989904135209,43#116.31047961062,39.989998263946,42.5#116.310506600338,39.990206973256,52.5#116.310506600338,39.990206973256,52.5#116.311968822793,39.99050754819,43#116.312106621229,39.99047402059,43#116.31211324293001,39.990485922888006,43#116.310634759589,39.990045537862,46#116.310371735567,39.989799696735005,44#116.310489333624,39.989904135209,43#116.31047961062,39.989998263946,42.5#116.310506600338,39.990206973256,52.5#116.310506600338,39.990206973256,52.5#116.311968822793,39.99050754819,43#116.312106621229,39.99047402059,43#116.31211324293001,39.990485922888006,43#116.310634759589,39.990045537862,46#116.310371735567,39.989799696735005,44#116.310489333624,39.989904135209,43#116.31047961062,39.989998263946,42.5#116.310506600338,39.990206973256,52.5#116.310506600338,39.990206973256,52.5#116.311968822793,39.99050754819,43#116.312106621229,39.99047402059,43#116.31211324293001,39.990485922888006,43#116.310634759589,39.990045537862,46#116.310371735567,39.989799696735005,44#116.310489333624,39.989904135209,43#116.31047961062,39.989998263946,42.5#116.310506600338,39.990206973256,52.5#116.310506600338,39.990206973256,52.5#116.311968822793,39.99050754819,43#116.312106621229,39.99047402059,43#116.31211324293001,39.990485922888006,43#116.310634759589,39.990045537862,46#116.310371735567,39.989799696735005,44#116.310489333624,39.989904135209,43#116.31047961062,39.989998263946,42.5#116.310506600338,39.990206973256,52.5#116.310506600338,39.990206973256,52.5#116.311968822793,39.99050754819,43#116.312106621229,39.99047402059,43#116.31211324293001,39.990485922888006,43#116.310634759589,39.990045537862,46#116.310371735567,39.989799696735005,44#116.310489333624,39.989904135209,43#116.31047961062,39.989998263946,42.5#116.310506600338,39.990206973256,52.5#116.310506600338,39.990206973256,52.5#116.311968822793,39.99050754819,43#116.312106621229,39.99047402059,43#116.31211324293001,39.990485922888006,43#116.310634759589,39.990045537862,46#116.310371735567,39.989799696735005,44#116.310489333624,39.989904135209,43#116.31047961062,39.989998263946,42.5#116.310506600338,39.990206973256,52.5#116.310506600338,39.990206973256,52.5#116.311968822793,39.99050754819,43#116.312106621229,39.99047402059,43#116.31211324293001,39.990485922888006,43#116.310634759589,39.990045537862,46#116.310371735567,39.989799696735005,44#116.310489333624,39.989904135209,43#116.31047961062,39.989998263946,42.5#116.310506600338,39.990206973256,52.5#116.310506600338,39.990206973256,52.5#116.311968822793,39.99050754819,43#116.312106621229,39.99047402059,43#116.31211324293001,39.990485922888006,43";
$arr = explode("#",$MapString);
$CityArray="";
getMapCity($arr, 10, 1, $CityArray);
/*********************
*@parent MapArr 数组
*@parent number 最小数值
*@parent i 次数
*@parent CityArray 取得的数值
*********************/
function getMapCity($MapArr, $number, $i,&$CityArray){
if(count($MapArr) >= $number){
$z = ceil(count($MapArr)/2);
if($i==1){ //第一次取三个点信息
$CityArray[]=$MapArr[0];
$CityArray[]=$MapArr[count($MapArr)-1];
}
$CityArray[]=$MapArr[$z];
$firstArray = array_slice($MapArr,0,$z);
$endArray = array_slice($MapArr,$z,$z);
getMapCity($firstArray,$number,++$i, $CityArray);
getMapCity($endArray,$number,++$i,$CityArray);
}
}
echo "<h1>CityArray</h1>";
var_dump($CityArray);