<?php
/**
* 获取城市地址首字母接口 PHP接口源代码
*
* 接口说明:PHP 获取城市地址首字母,如 广州 返回 G
*
* 最后修改:2024-10-12 17:47:02
*
* @author dogstar www.yesapi.cn
*
* 来源:https://open.yesapi.cn/apicode/8889.html
*/
function ($params, $di) {
$city = $params['city'];
$s0 = mb_substr($city, 0, 1, 'utf-8'); //获取城市
if ($s0 == '亳') {
return 'B';
} elseif ($s0 == '衢') {
return 'Q';
} elseif ($s0 == '泸' || $s0 == '漯') {
// }elseif ( $s0 =='泸' ) {
return 'L';
} elseif ($s0 == '濮') {
return 'P';
}
$s = iconv('UTF-8', 'gb2312', $s0); //将UTF-8转换成GB2312编码
if (ord($s0) > 128) { //汉字开头,汉字没有以U、V开头的
$asc = ord($s{0}) * 256 + ord($s{1}) - 65536;
if ($asc >= -20319 and $asc <= -20284) return "A";
if ($asc >= -20283 and $asc <= -19776) return "B";
if ($asc >= -19775 and $asc <= -19219) return "C";
if ($asc >= -19218 and $asc <= -18711) return "D";
if ($asc >= -18710 and $asc <= -18527) return "E";
if ($asc >= -18526 and $asc <= -18240) return "F";
if ($asc >= -18239 and $asc <= -17760) return "G";
if ($asc >= -17759 and $asc <= -17248) return "H";
if ($asc >= -17247 and $asc <= -17418) return "I";
if ($asc >= -17417 and $asc <= -16475) return "J";
if ($asc >= -16474 and $asc <= -16213) return "K";
if ($asc >= -16212 and $asc <= -15641) return "L";
if ($asc >= -15640 and $asc <= -15166) return "M";
if ($asc >= -15165 and $asc <= -14923) return "N";
if ($asc >= -14922 and $asc <= -14915) return "O";
if ($asc >= -14914 and $asc <= -14631) return "P";
if ($asc >= -14630 and $asc <= -14150) return "Q";
if ($asc >= -14149 and $asc <= -14091) return "R";
if ($asc >= -14090 and $asc <= -13319) return "S";
if ($asc >= -13318 and $asc <= -12839) return "T";
if ($asc >= -12838 and $asc <= -12557) return "W";
if ($asc >= -12556 and $asc <= -11848) return "X";
if ($asc >= -11847 and $asc <= -11056) return "Y";
if ($asc >= -11055 and $asc <= -10247) return "Z";
} else if (ord($s) >= 48 and ord($s) <= 57) { //数字开头
switch (iconv_substr($s, 0, 1, 'utf-8')) {
case 1:
return "Y";
case 2:
return "E";
case 3:
return "S";
case 4:
return "S";
case 5:
return "W";
case 6:
return "L";
case 7:
return "Q";
case 8:
return "B";
case 9:
return "J";
case 0:
return "L";
}
} else if (ord($s) >= 65 and ord($s) <= 90) { //大写英文开头
return substr($s, 0, 1);
} else if (ord($s) >= 97 and ord($s) <= 122) { //小写英文开头
return strtoupper(substr($s, 0, 1));
} else {
return iconv_substr($s0, 0, 1, 'utf-8');
//中英混合的词语,不适合上面的各种情况,因此直接提取首个字符即可
}
}
在线运行
获取城市地址首字母接口 - 免费接口源码库
持续更新中…… 免费使用,一键生成你的API
+ 复制到我的接口(请先登录,支持在线开发API)
预览接口发布效果
查看开发教程