ExtendService.php 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | ThinkAdmin
  4. // +----------------------------------------------------------------------
  5. // | 版权所有 2014~2019 广州楚才信息科技有限公司 [ http://www.cuci.cc ]
  6. // +----------------------------------------------------------------------
  7. // | 官方网站: http://demo.thinkadmin.top
  8. // +----------------------------------------------------------------------
  9. // | 开源协议 ( https://mit-license.org )
  10. // +----------------------------------------------------------------------
  11. // | gitee 开源项目:https://gitee.com/zoujingli/ThinkAdmin
  12. // | github开源项目:https://github.com/zoujingli/ThinkAdmin
  13. // +----------------------------------------------------------------------
  14. namespace app\store\service;
  15. use library\tools\Http;
  16. use think\Db;
  17. /**
  18. * 业务扩展服务
  19. * Class ExtendService
  20. * @package app\store\service
  21. */
  22. class ExtendService
  23. {
  24. /**
  25. * 发送短信验证码
  26. * @param string $mid 会员ID
  27. * @param string $phone 手机号
  28. * @param string $content 短信内容
  29. * @param string $productid 短信通道ID
  30. * @return boolean
  31. * @throws \think\Exception
  32. * @throws \think\exception\PDOException
  33. */
  34. public static function sendSms($mid, $phone, $content, $productid = '676767')
  35. {
  36. $tkey = date("YmdHis");
  37. $data = [
  38. 'tkey' => $tkey,
  39. 'mobile' => $phone,
  40. 'content' => $content,
  41. 'username' => sysconf('sms_zt_username'),
  42. 'productid' => $productid,
  43. 'password' => md5(md5(sysconf('sms_zt_password')) . $tkey),
  44. ];
  45. $result = Http::post('http://www.ztsms.cn/sendNSms.do', $data);
  46. list($code, $msg) = explode(',', $result . ',');
  47. $insert = ['mid' => $mid, 'phone' => $phone, 'content' => $content, 'result' => $result];
  48. Db::name('StoreMemberSmsHistory')->insert($insert);
  49. return intval($code) === 1;
  50. }
  51. /**
  52. * 查询短信余额
  53. * @return array
  54. * @throws \think\Exception
  55. * @throws \think\exception\PDOException
  56. */
  57. public static function querySmsBalance()
  58. {
  59. $tkey = date("YmdHis");
  60. $data = [
  61. 'tkey' => $tkey,
  62. 'username' => sysconf('sms_zt_username'),
  63. 'password' => md5(md5(sysconf('sms_zt_password')) . $tkey),
  64. ];
  65. $result = Http::post('http://www.ztsms.cn/balanceN.do', $data);
  66. if ($result > -1) {
  67. return ['code' => 1, 'num' => $result, 'msg' => '获取短信剩余条数成功!'];
  68. } elseif ($result > -2) {
  69. return ['code' => 0, 'num' => '0', 'msg' => '用户名或者密码不正确!'];
  70. } elseif ($result > -3) {
  71. return ['code' => 0, 'num' => '0', 'msg' => 'tkey不正确!'];
  72. } elseif ($result > -4) {
  73. return ['code' => 0, 'num' => '0', 'msg' => '用户不存在或用户停用!'];
  74. }
  75. }
  76. /**
  77. * 发送国际短信内容
  78. * @param string $mid
  79. * @param string $code 国家代码
  80. * @param string $phone 手机号码
  81. * @param string $content 发送内容
  82. * @return boolean
  83. * @throws \think\Exception
  84. * @throws \think\exception\PDOException
  85. */
  86. public static function sendSms2($mid, $code, $phone, $content)
  87. {
  88. $tkey = date("YmdHis");
  89. $data = [
  90. 'tkey' => $tkey,
  91. 'code' => $code,
  92. 'mobile' => $phone,
  93. 'content' => $content,
  94. 'username' => sysconf('sms_zt_username2'),
  95. 'password' => md5(md5(sysconf('sms_zt_password2')) . $tkey),
  96. ];
  97. $result = Http::post('http://intl.zthysms.com/intSendSms.do', $data);
  98. $insert = ['mid' => $mid, 'phone' => $phone, 'content' => $content, 'result' => $result];
  99. Db::name('StoreMemberSmsHistory')->insert($insert);
  100. return intval($code) === 1;
  101. }
  102. /**
  103. * 查询国际短信余额
  104. * @return array
  105. * @throws \think\Exception
  106. * @throws \think\exception\PDOException
  107. */
  108. public static function querySmsBalance2()
  109. {
  110. $tkey = date("YmdHis");
  111. $data = [
  112. 'username' => sysconf('sms_zt_username2'), 'tkey' => $tkey,
  113. 'password' => md5(md5(sysconf('sms_zt_password2')) . $tkey),
  114. ];
  115. $result = Http::post('http://intl.zthysms.com/intBalance.do', $data);
  116. if ($result > -1) {
  117. return ['code' => 1, 'num' => $result, 'msg' => '获取短信剩余条数成功!'];
  118. } elseif ($result > -2) {
  119. return ['code' => 0, 'num' => '0', 'msg' => '用户名或者密码不正确!'];
  120. } elseif ($result > -3) {
  121. return ['code' => 0, 'num' => '0', 'msg' => 'tkey不正确!'];
  122. } elseif ($result > -4) {
  123. return ['code' => 0, 'num' => '0', 'msg' => '用户不存在或用户停用!'];
  124. }
  125. }
  126. /**
  127. * 获取国际地域编号
  128. * @return array
  129. */
  130. public static function getRegionMap()
  131. {
  132. return [
  133. ['title' => '中国 台湾', 'english' => 'Taiwan', 'code' => 886],
  134. ['title' => '东帝汶民主共和国', 'english' => 'DEMOCRATIC REPUBLIC OF TIMORLESTE', 'code' => 670],
  135. ['title' => '中非共和国', 'english' => 'Central African Republic', 'code' => 236],
  136. ['title' => '丹麦', 'english' => 'Denmark', 'code' => 45],
  137. ['title' => '乌克兰', 'english' => 'Ukraine', 'code' => 380],
  138. ['title' => '乌兹别克斯坦', 'english' => 'Uzbekistan', 'code' => 998],
  139. ['title' => '乌干达', 'english' => 'Uganda', 'code' => 256],
  140. ['title' => '乌拉圭', 'english' => 'Uruguay', 'code' => 598],
  141. ['title' => '乍得', 'english' => 'Chad', 'code' => 235],
  142. ['title' => '也门', 'english' => 'Yemen', 'code' => 967],
  143. ['title' => '亚美尼亚', 'english' => 'Armenia', 'code' => 374],
  144. ['title' => '以色列', 'english' => 'Israel', 'code' => 972],
  145. ['title' => '伊拉克', 'english' => 'Iraq', 'code' => 964],
  146. ['title' => '伊朗', 'english' => 'Iran', 'code' => 98],
  147. ['title' => '伯利兹', 'english' => 'Belize', 'code' => 501],
  148. ['title' => '佛得角', 'english' => 'Cape Verde', 'code' => 238],
  149. ['title' => '俄罗斯', 'english' => 'Russia', 'code' => 7],
  150. ['title' => '保加利亚', 'english' => 'Bulgaria', 'code' => 359],
  151. ['title' => '克罗地亚', 'english' => 'Croatia', 'code' => 385],
  152. ['title' => '关岛', 'english' => 'Guam', 'code' => 1671],
  153. ['title' => '冈比亚', 'english' => 'The Gambia', 'code' => 220],
  154. ['title' => '冰岛', 'english' => 'Iceland', 'code' => 354],
  155. ['title' => '几内亚', 'english' => 'Guinea', 'code' => 224],
  156. ['title' => '几内亚比绍', 'english' => 'Guinea - Bissau', 'code' => 245],
  157. ['title' => '列支敦士登', 'english' => 'Liechtenstein', 'code' => 423],
  158. ['title' => '刚果共和国', 'english' => 'The Republic of Congo', 'code' => 242],
  159. ['title' => '刚果民主共和国', 'english' => 'Democratic Republic of the Congo', 'code' => 243],
  160. ['title' => '利比亚', 'english' => 'Libya', 'code' => 218],
  161. ['title' => '利比里亚', 'english' => 'Liberia', 'code' => 231],
  162. ['title' => '加拿大', 'english' => 'Canada', 'code' => 1],
  163. ['title' => '加纳', 'english' => 'Ghana', 'code' => 233],
  164. ['title' => '加蓬', 'english' => 'Gabon', 'code' => 241],
  165. ['title' => '匈牙利', 'english' => 'Hungary', 'code' => 36],
  166. ['title' => '南非', 'english' => 'South Africa', 'code' => 27],
  167. ['title' => '博茨瓦纳', 'english' => 'Botswana', 'code' => 267],
  168. ['title' => '卡塔尔', 'english' => 'Qatar', 'code' => 974],
  169. ['title' => '卢旺达', 'english' => 'Rwanda', 'code' => 250],
  170. ['title' => '卢森堡', 'english' => 'Luxembourg', 'code' => 352],
  171. ['title' => '印尼', 'english' => 'Indonesia', 'code' => 62],
  172. ['title' => '印度', 'english' => 'India', 'code' => 91918919],
  173. ['title' => '危地马拉', 'english' => 'Guatemala', 'code' => 502],
  174. ['title' => '厄瓜多尔', 'english' => 'Ecuador', 'code' => 593],
  175. ['title' => '厄立特里亚', 'english' => 'Eritrea', 'code' => 291],
  176. ['title' => '叙利亚', 'english' => 'Syria', 'code' => 963],
  177. ['title' => '古巴', 'english' => 'Cuba', 'code' => 53],
  178. ['title' => '吉尔吉斯斯坦', 'english' => 'Kyrgyzstan', 'code' => 996],
  179. ['title' => '吉布提', 'english' => 'Djibouti', 'code' => 253],
  180. ['title' => '哥伦比亚', 'english' => 'Colombia', 'code' => 57],
  181. ['title' => '哥斯达黎加', 'english' => 'Costa Rica', 'code' => 506],
  182. ['title' => '喀麦隆', 'english' => 'Cameroon', 'code' => 237],
  183. ['title' => '图瓦卢', 'english' => 'Tuvalu', 'code' => 688],
  184. ['title' => '土库曼斯坦', 'english' => 'Turkmenistan', 'code' => 993],
  185. ['title' => '土耳其', 'english' => 'Turkey', 'code' => 90],
  186. ['title' => '圣卢西亚', 'english' => 'Saint Lucia', 'code' => 1758],
  187. ['title' => '圣基茨和尼维斯', 'english' => 'Saint Kitts and Nevis', 'code' => 1869],
  188. ['title' => '圣多美和普林西比', 'english' => 'Sao Tome and Principe', 'code' => 239],
  189. ['title' => '圣文森特和格林纳丁斯', 'english' => 'Saint Vincent and the Grenadines', 'code' => 1784],
  190. ['title' => '圣皮埃尔和密克隆群岛', 'english' => 'Saint Pierre and Miquelon', 'code' => 508],
  191. ['title' => '圣赫勒拿岛', 'english' => 'Saint Helena', 'code' => 290],
  192. ['title' => '圣马力诺', 'english' => 'San Marino', 'code' => 378],
  193. ['title' => '圭亚那', 'english' => 'Guyana', 'code' => 592],
  194. ['title' => '坦桑尼亚', 'english' => 'Tanzania', 'code' => 255],
  195. ['title' => '埃及', 'english' => 'Egypt', 'code' => 20],
  196. ['title' => '埃塞俄比亚', 'english' => 'Ethiopia', 'code' => 251],
  197. ['title' => '基里巴斯', 'english' => 'Kiribati', 'code' => 686],
  198. ['title' => '塔吉克斯坦', 'english' => 'Tajikistan', 'code' => 992],
  199. ['title' => '塞内加尔', 'english' => 'Senegal', 'code' => 221],
  200. ['title' => '塞尔维亚', 'english' => 'Serbia and Montenegro', 'code' => 381],
  201. ['title' => '塞拉利昂', 'english' => 'Sierra Leone', 'code' => 232],
  202. ['title' => '塞浦路斯', 'english' => 'Cyprus', 'code' => 357],
  203. ['title' => '塞舌尔', 'english' => 'Seychelles', 'code' => 248],
  204. ['title' => '墨西哥', 'english' => 'Mexico', 'code' => 52],
  205. ['title' => '多哥', 'english' => 'Togo', 'code' => 228],
  206. ['title' => '多米尼克', 'english' => 'Dominica', 'code' => 1767],
  207. ['title' => '奥地利', 'english' => 'Austria', 'code' => 43],
  208. ['title' => '委内瑞拉', 'english' => 'Venezuela', 'code' => 58],
  209. ['title' => '孟加拉', 'english' => 'Bangladesh', 'code' => 880],
  210. ['title' => '安哥拉', 'english' => 'Angola', 'code' => 244],
  211. ['title' => '安圭拉岛', 'english' => 'Anguilla', 'code' => 1264],
  212. ['title' => '安道尔', 'english' => 'Andorra', 'code' => 376],
  213. ['title' => '密克罗尼西亚', 'english' => 'Federated States of Micronesia', 'code' => 691],
  214. ['title' => '尼加拉瓜', 'english' => 'Nicaragua', 'code' => 505],
  215. ['title' => '尼日利亚', 'english' => 'Nigeria', 'code' => 234],
  216. ['title' => '尼日尔', 'english' => 'Niger', 'code' => 227],
  217. ['title' => '尼泊尔', 'english' => 'Nepal', 'code' => 977],
  218. ['title' => '巴勒斯坦', 'english' => 'Palestine', 'code' => 970],
  219. ['title' => '巴哈马', 'english' => 'The Bahamas', 'code' => 1242],
  220. ['title' => '巴基斯坦', 'english' => 'Pakistan', 'code' => 92],
  221. ['title' => '巴巴多斯', 'english' => 'Barbados', 'code' => 1246],
  222. ['title' => '巴布亚新几内亚', 'english' => 'Papua New Guinea', 'code' => 675],
  223. ['title' => '巴拉圭', 'english' => 'Paraguay', 'code' => 595],
  224. ['title' => '巴拿马', 'english' => 'Panama', 'code' => 507],
  225. ['title' => '巴林', 'english' => 'Bahrain', 'code' => 973],
  226. ['title' => '巴西', 'english' => 'Brazil', 'code' => 55],
  227. ['title' => '布基纳法索', 'english' => ' Burkina Faso', 'code' => 226],
  228. ['title' => '布隆迪', 'english' => 'Burundi', 'code' => 257],
  229. ['title' => '希腊', 'english' => ' Greece', 'code' => 30],
  230. ['title' => '帕劳', 'english' => 'Palau', 'code' => 680],
  231. ['title' => '库克群岛', 'english' => ' Cook Islands', 'code' => 682],
  232. ['title' => '开曼群岛', 'english' => 'Cayman Islands', 'code' => 1345],
  233. ['title' => '德国', 'english' => ' Germany', 'code' => 49],
  234. ['title' => '意大利', 'english' => 'Italy', 'code' => 39],
  235. ['title' => '所罗门群岛', 'english' => ' Solomon Islands', 'code' => 677],
  236. ['title' => '托克劳', 'english' => 'Tokelau', 'code' => 690],
  237. ['title' => '拉脱维亚', 'english' => 'Latvia', 'code' => 371],
  238. ['title' => '挪威', 'english' => 'Norway', 'code' => 47],
  239. ['title' => '捷克共和国', 'english' => 'Czech Republic', 'code' => 420],
  240. ['title' => '摩尔多瓦', 'english' => 'Moldova', 'code' => 373],
  241. ['title' => '摩洛哥', 'english' => 'Morocco', 'code' => 212],
  242. ['title' => '摩纳哥', 'english' => 'Monaco', 'code' => 377],
  243. ['title' => '文莱', 'english' => 'Brunei Darussalam', 'code' => 673],
  244. ['title' => '斐济', 'english' => 'Fiji', 'code' => 679],
  245. ['title' => '斯威士兰王国', 'english' => 'The Kingdom of Swaziland', 'code' => 268],
  246. ['title' => '斯洛伐克', 'english' => 'Slovakia', 'code' => 421],
  247. ['title' => '斯洛文尼亚', 'english' => 'Slovenia', 'code' => 386],
  248. ['title' => '斯里兰卡', 'english' => 'Sri Lanka', 'code' => 94],
  249. ['title' => '新加坡', 'english' => 'Singapore ', 'code' => 65],
  250. ['title' => '新喀里多尼亚', 'english' => 'New Caledonia', 'code' => 687],
  251. ['title' => '新西兰', 'english' => 'New Zealand', 'code' => 64],
  252. ['title' => '日本', 'english' => 'Japan', 'code' => 81],
  253. ['title' => '智利', 'english' => 'Chile', 'code' => 56],
  254. ['title' => '朝鲜', 'english' => 'Korea, North', 'code' => 850],
  255. ['title' => '柬埔寨 ', 'english' => 'Cambodia', 'code' => 855],
  256. ['title' => '格林纳达', 'english' => 'Grenada', 'code' => 1473],
  257. ['title' => '格陵兰', 'english' => 'Greenland', 'code' => 299],
  258. ['title' => '格鲁吉亚', 'english' => 'Georgia', 'code' => 995],
  259. ['title' => '比利时', 'english' => 'Belgium', 'code' => 32],
  260. ['title' => '毛里塔尼亚', 'english' => 'Mauritania', 'code' => 222],
  261. ['title' => '毛里求斯', 'english' => 'Mauritius', 'code' => 230],
  262. ['title' => '汤加', 'english' => 'Tonga', 'code' => 676],
  263. ['title' => '沙特阿拉伯', 'english' => 'Saudi Arabia', 'code' => 966],
  264. ['title' => '法国', 'english' => 'France', 'code' => 33],
  265. ['title' => '法属圭亚那', 'english' => 'French Guiana', 'code' => 594],
  266. ['title' => '法属波利尼西亚', 'english' => 'French Polynesia', 'code' => 689],
  267. ['title' => '法属西印度群岛', 'english' => 'french west indies', 'code' => 596],
  268. ['title' => '法罗群岛', 'english' => 'Faroe Islands', 'code' => 298],
  269. ['title' => '波兰', 'english' => 'Poland', 'code' => 48],
  270. ['title' => '波多黎各', 'english' => 'The Commonwealth of Puerto Rico', 'code' => 17871939],
  271. ['title' => '波黑', 'english' => 'Bosnia and Herzegovina ', 'code' => 387],
  272. ['title' => '泰国', 'english' => 'Thailand', 'code' => 66],
  273. ['title' => '津巴布韦', 'english' => 'Zimbabwe', 'code' => 263],
  274. ['title' => '洪都拉斯', 'english' => 'Honduras', 'code' => 504],
  275. ['title' => '海地', 'english' => 'Haiti', 'code' => 509],
  276. ['title' => '澳大利亚', 'english' => 'Australia', 'code' => 61],
  277. ['title' => '澳门', 'english' => 'Macao', 'code' => 853],
  278. ['title' => '爱尔兰', 'english' => 'Ireland', 'code' => 353],
  279. ['title' => '爱沙尼亚', 'english' => 'Estonia', 'code' => 372],
  280. ['title' => '牙买加 ', 'english' => 'Jamaica', 'code' => 1876],
  281. ['title' => '特克斯和凯科斯群岛', 'english' => 'Turks and Caicos Islands', 'code' => 1649],
  282. ['title' => '特立尼达和多巴哥', 'english' => 'Trinidad and Tobago', 'code' => 1868],
  283. ['title' => '玻利维亚', 'english' => 'Bolivia', 'code' => 591],
  284. ['title' => '瑙鲁', 'english' => 'Nauru', 'code' => 674],
  285. ['title' => '瑞典', 'english' => 'Sweden', 'code' => 46],
  286. ['title' => '瑞士', 'english' => 'Switzerland', 'code' => 41],
  287. ['title' => '瓜德罗普', 'english' => 'Guadeloupe', 'code' => 590],
  288. ['title' => '瓦利斯和富图纳群岛', 'english' => 'Wallis et Futuna', 'code' => 681],
  289. ['title' => '瓦努阿图', 'english' => 'Vanuatu', 'code' => 678],
  290. ['title' => '留尼汪 ', 'english' => 'Reunion', 'code' => 262],
  291. ['title' => '白俄罗斯', 'english' => 'Belarus', 'code' => 375],
  292. ['title' => '百慕大', 'english' => 'Bermuda', 'code' => 1441],
  293. ['title' => '直布罗陀', 'english' => 'Gibraltar', 'code' => 350],
  294. ['title' => '福克兰群岛', 'english' => 'Falkland', 'code' => 500],
  295. ['title' => '科威特', 'english' => 'Kuwait', 'code' => 965],
  296. ['title' => '科摩罗和马约特', 'english' => 'Comoros', 'code' => 269],
  297. ['title' => '科特迪瓦', 'english' => 'Cote d’Ivoire', 'code' => 225],
  298. ['title' => '秘鲁', 'english' => 'Peru', 'code' => 51],
  299. ['title' => '突尼斯', 'english' => 'Tunisia', 'code' => 216],
  300. ['title' => '立陶宛', 'english' => 'Lithuania', 'code' => 370],
  301. ['title' => '索马里', 'english' => 'Somalia', 'code' => 252],
  302. ['title' => '约旦', 'english' => 'Jordan', 'code' => 962],
  303. ['title' => '纳米比亚', 'english' => 'Namibia', 'code' => 264],
  304. ['title' => '纽埃岛', 'english' => 'Island of Niue', 'code' => 683],
  305. ['title' => '缅甸  ', 'english' => 'Burma', 'code' => 95],
  306. ['title' => '罗马尼亚', 'english' => 'Romania', 'code' => 40],
  307. ['title' => '美国', 'english' => 'United States of America', 'code' => 1],
  308. ['title' => '美属维京群岛', 'english' => 'Virgin Islands', 'code' => 1340],
  309. ['title' => '美属萨摩亚', 'english' => 'American Samoa', 'code' => 1684],
  310. ['title' => '老挝', 'english' => 'Laos', 'code' => 856],
  311. ['title' => '肯尼亚', 'english' => 'Kenya', 'code' => 254],
  312. ['title' => '芬兰', 'english' => 'Finland', 'code' => 358],
  313. ['title' => '苏丹', 'english' => 'Sudan', 'code' => 249],
  314. ['title' => '苏里南', 'english' => 'Suriname', 'code' => 597],
  315. ['title' => '英国', 'english' => 'United Kingdom', 'code' => 44],
  316. ['title' => '英属维京群岛', 'english' => 'British Virgin Islands', 'code' => 1284],
  317. ['title' => '荷兰', 'english' => 'Netherlands', 'code' => 31],
  318. ['title' => '荷属安的列斯', 'english' => 'Netherlands Antilles', 'code' => 599],
  319. ['title' => '莫桑比克', 'english' => 'Mozambique', 'code' => 258],
  320. ['title' => '莱索托', 'english' => 'Lesotho', 'code' => 266],
  321. ['title' => '菲律宾', 'english' => 'Philippines', 'code' => 63],
  322. ['title' => '萨尔瓦多', 'english' => 'El Salvador', 'code' => 503],
  323. ['title' => '萨摩亚', 'english' => 'Samoa', 'code' => 685],
  324. ['title' => '葡萄牙', 'english' => 'Portugal', 'code' => 351],
  325. ['title' => '蒙古', 'english' => 'Mongolia', 'code' => 976],
  326. ['title' => '西班牙', 'english' => 'Spain', 'code' => 34],
  327. ['title' => '贝宁', 'english' => 'Benin', 'code' => 229],
  328. ['title' => '赞比亚', 'english' => 'Zambia', 'code' => 260],
  329. ['title' => '赤道几内亚', 'english' => 'Equatorial Guinea', 'code' => 240],
  330. ['title' => '越南', 'english' => 'Vietnam', 'code' => 84],
  331. ['title' => '阿塞拜疆', 'english' => 'Azerbaijan', 'code' => 994],
  332. ['title' => '阿富汗', 'english' => 'Afghanistan', 'code' => 93],
  333. ['title' => '阿尔及利亚', 'english' => 'Algeria', 'code' => 213],
  334. ['title' => '阿尔巴尼亚', 'english' => 'Albania', 'code' => 355],
  335. ['title' => '阿拉伯联合酋长国', 'english' => 'United Arab Emirates', 'code' => 971],
  336. ['title' => '阿曼', 'english' => 'Oman', 'code' => 968],
  337. ['title' => '阿根廷', 'english' => 'Argentina', 'code' => 54],
  338. ['title' => '阿鲁巴', 'english' => 'Aruba', 'code' => 297],
  339. ['title' => '韩国', 'english' => 'Korea, South)', 'code' => 82],
  340. ['title' => '香港', 'english' => 'Hong Kong(SAR)', 'code' => 852],
  341. ['title' => '马其顿', 'english' => 'Macedonia', 'code' => 389],
  342. ['title' => '马尔代夫', 'english' => 'Maldives  ', 'code' => 960],
  343. ['title' => '马拉维', 'english' => ' Malawi', 'code' => 265],
  344. ['title' => '马来西亚', 'english' => 'Malaysia', 'code' => 60],
  345. ['title' => '马绍尔群岛', 'english' => 'Marshall Islands', 'code' => 692],
  346. ['title' => '马耳他', 'english' => 'Malta', 'code' => 356],
  347. ['title' => '马达加斯加', 'english' => 'Madagascar', 'code' => 261],
  348. ['title' => '马里', 'english' => 'Mali', 'code' => 223],
  349. ['title' => '黎巴嫩', 'english' => 'Lebanon', 'code' => 961],
  350. ['title' => '黑山共和国', 'english' => 'The Republic of Montenegro', 'code' => 382],
  351. ];
  352. }
  353. }