Last active
August 24, 2019 17:43
-
-
Save Sturtuk/ef21a7f837321c58fd8671ae5ae40c4e to your computer and use it in GitHub Desktop.
Check valid zip code (or) get a matching zip code country - All Countries
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| if(!function_exists('is_valid_postalCode')){ | |
| function is_valid_postalCode($code){ | |
| $regex = [ | |
| "AD" => "^(?:AD)*(\d{3})$", | |
| "AM" => "^(\d{6})$", | |
| "AR" => "^([A-Z]\d{4}[A-Z]{3})$", | |
| "AT" => "^(\d{4})$", | |
| "AU" => "^(\d{4})$", | |
| "AX" => "^(?:FI)*(\d{5})$", | |
| "AZ" => "^(?:AZ)*(\d{4})$", | |
| "BA" => "^(\d{5})$", | |
| "BB" => "^(?:BB)*(\d{5})$", | |
| "BD" => "^(\d{4})$", | |
| "BE" => "^(\d{4})$", | |
| "BG" => "^(\d{4})$", | |
| "BH" => "^(\d{3}\d?)$", | |
| "BM" => "^([A-Z]{2}\d{2})$", | |
| "BN" => "^([A-Z]{2}\d{4})$", | |
| "BR" => "^(\d{8})$", | |
| "BY" => "^(\d{6})$", | |
| "CA" => "^([ABCEGHJKLMNPRSTVXY]\d[ABCEGHJKLMNPRSTVWXYZ]) ?(\d[ABCEGHJKLMNPRSTVWXYZ]\d)$", | |
| "CH" => "^(\d{4})$", | |
| "CL" => "^(\d{7})$", | |
| "CN" => "^(\d{6})$", | |
| "CR" => "^(\d{4})$", | |
| "CU" => "^(?:CP)*(\d{5})$", | |
| "CV" => "^(\d{4})$", | |
| "CX" => "^(\d{4})$", | |
| "CY" => "^(\d{4})$", | |
| "CZ" => "^(\d{5})$", | |
| "DE" => "^(\d{5})$", | |
| "DK" => "^(\d{4})$", | |
| "DO" => "^(\d{5})$", | |
| "DZ" => "^(\d{5})$", | |
| "EC" => "^([a-zA-Z]\d{4}[a-zA-Z])$", | |
| "EE" => "^(\d{5})$", | |
| "EG" => "^(\d{5})$", | |
| "ES" => "^(\d{5})$", | |
| "ET" => "^(\d{4})$", | |
| "FI" => "^(?:FI)*(\d{5})$", | |
| "FM" => "^(\d{5})$", | |
| "FO" => "^(?:FO)*(\d{3})$", | |
| "FR" => "^(\d{5})$", | |
| "GB" => "GIR[ ]?0AA|((AB|AL|B|BA|BB|BD|BH|BL|BN|BR|BS|BT|CA|CB|CF|CH|CM|CO|CR|CT|CV|CW|DA|DD|DE|DG|DH|DL|DN|DT|DY|E|EC|EH|EN|EX|FK|FY|G|GL|GY|GU|HA|HD|HG|HP|HR|HS|HU|HX|IG|IM|IP|IV|JE|KA|KT|KW|KY|L|LA|LD|LE|LL|LN|LS|LU|M|ME|MK|ML|N|NE|NG|NN|NP|NR|NW|OL|OX|PA|PE|PH|PL|PO|PR|RG|RH|RM|S|SA|SE|SG|SK|SL|SM|SN|SO|SP|SR|SS|ST|SW|SY|TA|TD|TF|TN|TQ|TR|TS|TW|UB|W|WA|WC|WD|WF|WN|WR|WS|WV|YO|ZE)(\d[\dA-Z]?[ ]?\d[ABD-HJLN-UW-Z]{2}))|BFPO[ ]?\d{1,4}", | |
| "GE" => "^(\d{4})$", | |
| "GF" => "^((97|98)3\d{2})$", | |
| "GG" => "^(([A-Z]\d{2}[A-Z]{2})|([A-Z]\d{3}[A-Z]{2})|([A-Z]{2}\d{2}[A-Z]{2})|([A-Z]{2}\d{3}[A-Z]{2})|([A-Z]\d[A-Z]\d[A-Z]{2})|([A-Z]{2}\d[A-Z]\d[A-Z]{2})|(GIR0AA))$", | |
| "GL" => "^(\d{4})$", | |
| "GP" => "^((97|98)\d{3})$", | |
| "GR" => "^(\d{5})$", | |
| "GT" => "^(\d{5})$", | |
| "GU" => "^(969\d{2})$", | |
| "GW" => "^(\d{4})$", | |
| "HN" => "^([A-Z]{2}\d{4})$", | |
| "HR" => "^(?:HR)*(\d{5})$", | |
| "HT" => "^(?:HT)*(\d{4})$", | |
| "HU" => "^(\d{4})$", | |
| "ID" => "^(\d{5})$", | |
| "IL" => "^(\d{5})$", | |
| "IM" => "^(([A-Z]\d{2}[A-Z]{2})|([A-Z]\d{3}[A-Z]{2})|([A-Z]{2}\d{2}[A-Z]{2})|([A-Z]{2}\d{3}[A-Z]{2})|([A-Z]\d[A-Z]\d[A-Z]{2})|([A-Z]{2}\d[A-Z]\d[A-Z]{2})|(GIR0AA))$", | |
| "IN" => "^(\d{6})$", | |
| "IQ" => "^(\d{5})$", | |
| "IR" => "^(\d{10})$", | |
| "IS" => "^(\d{3})$", | |
| "IT" => "^(\d{5})$", | |
| "JE" => "^(([A-Z]\d{2}[A-Z]{2})|([A-Z]\d{3}[A-Z]{2})|([A-Z]{2}\d{2}[A-Z]{2})|([A-Z]{2}\d{3}[A-Z]{2})|([A-Z]\d[A-Z]\d[A-Z]{2})|([A-Z]{2}\d[A-Z]\d[A-Z]{2})|(GIR0AA))$", | |
| "JO" => "^(\d{5})$", | |
| "JP" => "^(\d{7})$", | |
| "KE" => "^(\d{5})$", | |
| "KG" => "^(\d{6})$", | |
| "KH" => "^(\d{5})$", | |
| "KP" => "^(\d{6})$", | |
| "KR" => "^(?:SEOUL)*(\d{6})$", | |
| "KW" => "^(\d{5})$", | |
| "KZ" => "^(\d{6})$", | |
| "LA" => "^(\d{5})$", | |
| "LB" => "^(\d{4}(\d{4})?)$", | |
| "LI" => "^(\d{4})$", | |
| "LK" => "^(\d{5})$", | |
| "LR" => "^(\d{4})$", | |
| "LS" => "^(\d{3})$", | |
| "LT" => "^(?:LT)*(\d{5})$", | |
| "LU" => "^(\d{4})$", | |
| "LV" => "^(?:LV)*(\d{4})$", | |
| "MA" => "^(\d{5})$", | |
| "MC" => "^(\d{5})$", | |
| "MD" => "^(?:MD)*(\d{4})$", | |
| "ME" => "^(\d{5})$", | |
| "MG" => "^(\d{3})$", | |
| "MK" => "^(\d{4})$", | |
| "MM" => "^(\d{5})$", | |
| "MN" => "^(\d{6})$", | |
| "MQ" => "^(\d{5})$", | |
| "MT" => "^([A-Z]{3}\d{2}\d?)$", | |
| "MV" => "^(\d{5})$", | |
| "MX" => "^(\d{5})$", | |
| "MY" => "^(\d{5})$", | |
| "MZ" => "^(\d{4})$", | |
| "NC" => "^(\d{5})$", | |
| "NE" => "^(\d{4})$", | |
| "NF" => "^(\d{4})$", | |
| "NG" => "^(\d{6})$", | |
| "NI" => "^(\d{7})$", | |
| "NL" => "^(\d{4}[A-Z]{2})$", | |
| "NO" => "^(\d{4})$", | |
| "NP" => "^(\d{5})$", | |
| "NZ" => "^(\d{4})$", | |
| "OM" => "^(\d{3})$", | |
| "PF" => "^((97|98)7\d{2})$", | |
| "PG" => "^(\d{3})$", | |
| "PH" => "^(\d{4})$", | |
| "PK" => "^(\d{5})$", | |
| "PL" => "^(\d{5})$", | |
| "PM" => "^(97500)$", | |
| "PR" => "^(\d{9})$", | |
| "PT" => "^(\d{7})$", | |
| "PW" => "^(96940)$", | |
| "PY" => "^(\d{4})$", | |
| "RE" => "^((97|98)(4|7|8)\d{2})$", | |
| "RO" => "^(\d{6})$", | |
| "RS" => "^(\d{6})$", | |
| "RU" => "^(\d{6})$", | |
| "SA" => "^(\d{5})$", | |
| "SD" => "^(\d{5})$", | |
| "SE" => "^(?:SE)*(\d{5})$", | |
| "SG" => "^(\d{6})$", | |
| "SH" => "^(STHL1ZZ)$", | |
| "SI" => "^(?:SI)*(\d{4})$", | |
| "SK" => "^(\d{5})$", | |
| "SM" => "^(4789\d)$", | |
| "SN" => "^(\d{5})$", | |
| "SO" => "^([A-Z]{2}\d{5})$", | |
| "SV" => "^(?:CP)*(\d{4})$", | |
| "SZ" => "^([A-Z]\d{3})$", | |
| "TC" => "^(TKCA 1ZZ)$", | |
| "TH" => "^(\d{5})$", | |
| "TJ" => "^(\d{6})$", | |
| "TM" => "^(\d{6})$", | |
| "TN" => "^(\d{4})$", | |
| "TR" => "^(\d{5})$", | |
| "TW" => "^(\d{5})$", | |
| "UA" => "^(\d{5})$", | |
| "US" => "^\d{5}(-\d{4})?$", | |
| "UY" => "^(\d{5})$", | |
| "UZ" => "^(\d{6})$", | |
| "VA" => "^(\d{5})$", | |
| "VE" => "^(\d{4})$", | |
| "VI" => "^\d{5}(-\d{4})?$", | |
| "VN" => "^(\d{6})$", | |
| "WF" => "^(986\d{2})$", | |
| "YT" => "^(\d{5})$", | |
| "ZA" => "^(\d{4})$", | |
| "ZM" => "^(\d{5})$", | |
| "CS" => "^(\d{5})$", | |
| ]; | |
| foreach ($regex as $key => $value) { | |
| if(preg_match("/^$value/", $code,$prefect_match)) { | |
| if($prefect_match[0] != '') { | |
| $match_with[$key] = $prefect_match; | |
| } | |
| } | |
| } | |
| return $match_with; | |
| } | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "US": [ | |
| "56005" | |
| ], | |
| "DE": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "FR": [ | |
| "56005" | |
| ], | |
| "AU": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "IT": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "CH": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "AT": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "ES": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "BE": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "DK": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "SE": [ | |
| "56005" | |
| ], | |
| "NO": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "PT": [ | |
| "5600" | |
| ], | |
| "FI": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "CN": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "TW": [ | |
| "56005", | |
| "05" | |
| ], | |
| "SG": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "DZ": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "AR": [ | |
| "5600" | |
| ], | |
| "AM": [ | |
| "5600" | |
| ], | |
| "AZ": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "BH": [ | |
| "560", | |
| "560", | |
| "5" | |
| ], | |
| "BD": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "BY": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "BA": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "BG": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "KH": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "CV": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "CR": [ | |
| "56005" | |
| ], | |
| "HR": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "CY": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "CZ": [ | |
| "56005" | |
| ], | |
| "DO": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "EC": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "EG": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "EE": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "FO": [ | |
| "560", | |
| "560" | |
| ], | |
| "GE": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "GR": [ | |
| "56005" | |
| ], | |
| "GT": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "HT": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "HN": [ | |
| "56005" | |
| ], | |
| "HU": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "IS": [ | |
| "560", | |
| "560" | |
| ], | |
| "IN": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "ID": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "IL": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "JO": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "KZ": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "KE": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "KW": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "LA": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "LV": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "LB": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "LT": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "LU": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "MK": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "MY": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "MV": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "MX": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "MD": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "MA": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "NP": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "NZ": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "NG": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "OM": [ | |
| "560" | |
| ], | |
| "PK": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "PY": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "PH": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "RO": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "RU": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "SA": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "SN": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "SK": [ | |
| "56005" | |
| ], | |
| "SI": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "ZA": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "LK": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "TJ": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "TH": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "TN": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "TR": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "TM": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "UA": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "UY": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "UZ": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "VA": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "VE": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "ZM": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "AS": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "CC": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "CK": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "RS": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "CS": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "YU": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "CX": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "ET": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "NF": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "GN": [ | |
| "560", | |
| "560" | |
| ], | |
| "GW": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "HM": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "IQ": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "KG": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "LR": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "LS": [ | |
| "560", | |
| "560" | |
| ], | |
| "MG": [ | |
| "560", | |
| "560" | |
| ], | |
| "MN": [ | |
| "560055", | |
| "560055" | |
| ], | |
| "NE": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "PG": [ | |
| "560", | |
| "560" | |
| ], | |
| "PW": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "SJ": [ | |
| "5600", | |
| "5600" | |
| ], | |
| "SO": [ | |
| "56005", | |
| "56005" | |
| ], | |
| "XK": [ | |
| "56005", | |
| "56005" | |
| ] | |
| } | |
| { | |
| "GB": [ | |
| "M11AH", | |
| "M11AH", | |
| "M", | |
| "11AH" | |
| ] | |
| } | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Check in Laravel | |
| <?php | |
| Route::any('zipcode_check', function (){ | |
| return response()->json(is_valid_postalCode('560055')); | |
| }); | |
| Route::any('zipcode_check', function (){ | |
| return response()->json(is_valid_postalCode('M11AH')); | |
| }); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment