#### 1. 前言 --- 公司有一個(gè)話費(fèi)充值項(xiàng)目,需要獲取手機(jī)號(hào)的運(yùn)營商,進(jìn)行執(zhí)行不同的邏輯。 根據(jù)手機(jī)號(hào)的前三位就可以知道手機(jī)號(hào)的運(yùn)營商 移動(dòng):134、135、136、137、138、139、150、151、157(TD)、158、159、187、188 聯(lián)通:130、131、132、152、155、156、185、186 電信:133、153、180、189、(1349衛(wèi)通) #### 2. PHP 獲取手機(jī)號(hào)的運(yùn)營商 --- 這是我通過查找資料得到的一個(gè)函數(shù),測(cè)試確實(shí)可用 ```php /** * 獲取手機(jī)號(hào)運(yùn)營商 * * @param $mobile * @return mobile|union|telcom|unknown 移動(dòng)|聯(lián)通|電信|未知 */ function getMobileServiceProvider($mobile) { $isChinaMobile = "/^134[0-8]\d{7}$|^(?:13[5-9]|147|15[0-27-9]|178|18[2-478])\d{8}$/"; $isChinaUnion = "/^(?:13[0-2]|145|15[56]|176|18[56])\d{8}$/"; $isChinaTelcom = "/^(?:133|153|177|173|18[019])\d{8}$/"; if (preg_match($isChinaMobile, $mobile)) { return 'mobile'; // 移動(dòng) } else if (preg_match($isChinaUnion, $mobile)) { return 'union'; // 聯(lián)通 } else if (preg_match($isChinaTelcom, $mobile)) { return 'telcom'; // 電信 } else { return 'unknown'; // 未知 } } ```