Hướng dẫn how can i add country code in php? - làm cách nào để thêm mã quốc gia vào php?
Tôi có truy vấn regex sau mà tôi đã xây dựng ý tưởng là lấy đầu vào của người dùng (số điện thoại) và sau đó đảm bảo tất cả các số là định dạng chính xác khi tôi lưu trữ nó trong cơ sở dữ liệu. Show
Vấn đề tôi gặp phải là Regex của tôi không phục vụ cho tất cả các kịch bản, tôi sẽ giải thích một chút. Đây là mã hiện tại của tôi:
Hành vi tôi muốn là như sau; Nếu người dùng nhập bất kỳ định dạng nào sau đây, số sẽ kết thúc là +27
Tất cả nên được chuyển đổi thành:
Tái bút: Lần đầu tiên tôi làm sạch đầu vào số với điều này:
Và sau đó tôi sử dụng hàm 3 trên số. Nói cách khác:
PPS: number_sa, SA là viết tắt của Nam Phi kể từ khi tôi sống ở đó và tôi muốn điều này làm việc cho mã quốc gia của chúng tôi là +27 Giải pháp, tôi đã kết thúc với câu trả lời của @Kamil Kiełczewski bằng cách xây dựng nó vào chương trình của tôi như sau:, I ended up with @Kamil Kiełczewski answer by building it into my program as follows: (PECL GEOIP> = 0.2.0) Geoip_country_code_by_name - Nhận mã quốc gia hai chữ cái — Get the two letter country code Sự mô tảGeoIP_Country_Code_By_Name (Chuỗi Thông số 5Tên máy chủ hoặc địa chỉ IP có vị trí sẽ được tra cứu. Trả về giá trịTrả về hai chữ cái mã quốc gia ISO khi thành công hoặc 6 nếu không thể tìm thấy địa chỉ trong cơ sở dữ liệu. 6 if the address cannot be found in the database. Ví dụVí dụ #1 ví dụ về geooip_country_code_by_name ()geoip_country_code_by_name() example Điều này sẽ in nơi có ví dụ máy chủ. 7Ví dụ trên sẽ xuất ra: This host is located in: US Ghi chúXem thêm
Ameen Oluajayi ¶ ¶ 3 năm trước 8 9 0
Số điện thoại được tiêu chuẩn hóa theo định dạng quốc tế được gọi là E.164 kết hợp mã quốc gia và số thuê bao theo định dạng như thế này: +1415552671. Định dạng này được yêu cầu bởi nhiều API (bao gồm Twilio's) và có nghĩa là bạn không phải lưu trữ mã quốc gia và số điện thoại trong hai cột cơ sở dữ liệu riêng biệt.+14155552671. This format is required by many APIs (including Twilio's) and means that you don't have to store country codes and phone numbers in two separate database columns. Tuy nhiên, bạn có thể không muốn người dùng của mình phải nhập mã + và mã quốc gia khi họ cung cấp số điện thoại của họ cho: Bài đăng trên blog này sẽ đi qua cách xây dựng trường đầu vào số điện thoại để xử lý và phân tích số điện thoại bằng cách sử dụng plugin HTML, JavaScript và plugin 1 cơ bản. Chúng tôi sẽ bao gồm các khuyến nghị để xác minh điện thoại và phòng chống gian lận.Bạn có thể tìm thấy mã đã hoàn thành trên github của tôi. Plugin intl-tel-input có thể làm gì?Dự án này sử dụng nặng Intl-Tel-Input, "plugin JavaScript để nhập và xác thực các số điện thoại quốc tế". Tôi sẽ đề cập đến việc thiết lập plugin thông thường của mình, nhưng nó có rất nhiều tùy chọn cấu hình bổ sung mà bạn có thể khám phá trong tài liệu. Plugin cung cấp mã quốc gia thả xuống với các cờ đẹp để đại diện cho các quốc gia khác nhau. Nó cũng xử lý số thuê bao hoặc "định dạng quốc gia" để bình thường hóa đầu vào của người dùng có thể bao gồm không gian, dấu ngoặc đơn, dấu gạch ngang, v.v. Nhúng plugin intl-tel input vào mã của bạnChúng tôi sẽ giữ mọi thứ khá đơn giản ở đây và bắt đầu với một số vani HTML và JavaScript. Tạo một tệp mới có tên 2 và thêm mã sau:
Điều này kéo theo các phiên bản CDN của CSS và JS của plugin, giúp chúng tôi hiển thị mã quốc gia thả xuống và xử lý các số điện thoại. Tôi đang sử dụng v17.0.8, nhưng bạn có thể tìm thấy phiên bản mới nhất bằng cách kiểm tra các thẻ. Bạn cũng có thể cài đặt plugin với một bundler hoặc tải xuống và tự lưu trữ mã nguồn. Đối với các kiểu đẹp hơn, hãy tạo một tệp mới trong cùng một thư mục được gọi là 3 và thêm CSS được tìm thấy ở đây.Tiếp theo, thêm biểu mẫu sẽ bao gồm đầu vào số điện thoại. Bên trong thẻ 4 của tệp 2, thêm HTML sau:
Nếu bạn tải tệp này vào trình duyệt vào thời điểm này, bạn sẽ thấy trường biểu mẫu nhưng chưa có định dạng, chúng tôi vẫn cần khởi tạo plugin. Khởi tạo plugin intl-tel-inputThêm một thẻ tập lệnh bên dưới thân nhưng bên trong HTML và thêm mã khởi tạo sau:
|