Php lấy ip máy chủ
Trong bài viết trước, tôi đã giới thiệu cho các bạn cách lấy địa chỉ IP của khách truy cập trang web. Và trong bài viết này, tôi sẽ giúp các bạn lấy thêm thông tin liên quan đến các địa chỉ IP như đất nước, miền, chính độ (kinh độ và vĩ độ)… Với những thông tin này sẽ giúp các bạn đánh giá, Thông thường sẽ có 2 cách chính để bạn lấy được những thông tin cần thiết từ địa chỉ IP. Đó là dựa vào những trang web có cung cấp sẵn API/dịch vụ để lấy thông tin hoặc tải xuống và truy xuất từ những Cơ sở dữ liệu có sẵn thông tin liên quan đến địa chỉ IP 1, Giới thiệu một số website cung cấp API/dịch vụ lấy thông tinmột, chủ nhà. thông tin Khi sử dụng API từ trang web này, các bạn sẽ có những lựa chọn sau đây để lấy thông tin
Và phương thức sử dụng của trang web này là phương thức GET. Có 2 tham số chính thường được sử dụng là
Một đoạn mã nhỏ mà tôi sử dụng để lấy thông tin như sau "; // Latitude: 33.0582 echo "Longitude: " . $json_data['lng'] . " b, thông tin ip. io Thông tin liên quan đến địa chỉ IP được trang web này cung cấp cho người dùng dưới định dạng JSON. Cách thức lấy thông tin cũng khá dễ dàng Hai đoạn code dưới đây sẽ được viết bằng PHP và jQuery để các bạn có thêm nhiều sự lựa chọn 12.215.42.19 [hostname] => No Hostname [city] => [region] => [country] => US [loc] => 38,-97 [org] => AS7018 AT&T Services, Inc. ) ?> and… // HTML // jQuery $.get("http://ipinfo.io", function (response) { $("#ip").html("IP: " + response.ip); $("#address").html("Location: " + response.city + ", " + response.region); $("#details").html(JSON.stringify(response, null, 4)); }, "jsonp"); c, freegeoip. mạng lưới Đây là một trang web cung cấp API Dịch vụ Web (theo kiểu RESTful) miễn phí, mang đến các thông tin liên quan của địa chỉ IP và Tên máy chủ. Dịch vụ web được cung cấp với định dạng chung sau freegeoip.net/{format}/{ip_or_hostname} In which,
Đây là đoạn mã nhỏ mà tôi sử dụng để lấy thông tin từ trang web này 12.215.42.19 [country_code] => US [country_name] => United States [region_code] => [region_name] => [city] => [zipcode] => [latitude] => 38 [longitude] => -97 [metro_code] => [areacode] => ) ?> Lưu ý. Các bạn chỉ được yêu cầu 10. 000 truy vấn mỗi giờ, nếu vượt quá số lượng quy định thì sẽ nhận được thông báo HTTP 403 (Bị cấm). Ngoài ra, các bạn có thể tải mã nguồn tại đây. d, ipinfodb. com Trang web này cung cấp nhiều chức năng liên quan đến địa chỉ IP như dò tìm địa chỉ IP, cung cấp Cơ sở dữ liệu và không thể thiếu API (miễn phí) để truy vấn và lấy thông tin địa chỉ IP Mục API của trang web này cung cấp khá đầy đủ và chi tiết về các phương thức và cách lấy dữ liệu. Vì là API miễn phí nên họ chỉ cung cấp các phương thức đơn giản, bao gồm 2 phương thức chính và 4 tham số. Các cụ thể như sau Đánh giá tốt nhất https. //trực tuyếnbellagiocasino. com/sòng bạc Danh sách API [table] tham số API [table] Cách truy vấn như sau http://api.ipinfodb.com/v3/ip-city/?key= hoặc http://api.ipinfodb.com/v3/ip-country/?key= Các bạn cần cung cấp API Key để thực hiện các truy vấn này. Muốn có API Key thì các bạn đăng ký tại đây Ngoài ra, trang web còn cung cấp 1 PHP Class để lấy dữ liệu (download tại đây). Dưới đây là 1 ví dụ về các chức năng của Class đó setKey(' Một số ngôn ngữ và mô-đun mà trang web này hỗ trợ thêm
Khi tìm hiểu về trang web này, tôi thấy có 1 đoạn mã chia sẻ về cách lấy dữ liệu của trang này. Đoạn mã của tác giả SpYk3HH trên trang Stackoverflow khá đơn giản, sử dụng cURL để lấy kết quả trực tiếp mà không sử dụng API ________số 8And how to use as after detect_location(); // returns "CITY, STATE" based on user IP detect_location('xxx.xxx.xxx.xxx'); // returns "CITY, STATE" based on IP you provide detect_location(NULL, TRUE); // based on user IP // returns array(8) { ["city"] => "CITY", ["state"] => "STATE", ["country"] => "US", ["zip"] => "xxxxx", ["latitude"] => "xx.xxxxxx", ["longitude"] => "-xx.xxxxxx", ["timezone"] => "-07:00", ["hostname"] => "xx-xx-xx-xx.host.name.net" } detect_location('xxx.xxx.xxx.xxx', TRUE); // based on IP you provide // returns array(8) { ["city"] => "CITY", ["state"] => "STATE", ["country"] => "US", ["zip"] => "xxxxx", ["latitude"] => "xx.xxxxxx", ["longitude"] => "-xx.xxxxxx", ["timezone"] => "-07:00", ["hostname"] => "xx-xx-xx-xx.host.name.net" } e, iptolatlng. com Các bạn có thể yêu cầu truy cập trang web này để lấy dữ liệu với 3 tham số cơ bản là ip, type và callback. Có 2 kiểu dữ liệu được trả về là JSON và JSONP Cách sử dụng hiển thị ngay trên trang web nên tôi không cần giới thiệu ở đây nữa f, plugin địa lý. com Với trang web này, các bạn có thể sử dụng cú pháp sau lấy dữ liệu do PHP Web Service cung cấp 12.215.42.19 [hostname] => No Hostname [city] => [region] => [country] => US [loc] => 38,-97 [org] => AS7018 AT&T Services, Inc. ) ?>0 Sau đây là 1 ví dụ sử dụng Web Service trên 12.215.42.19 [hostname] => No Hostname [city] => [region] => [country] => US [loc] => 38,-97 [org] => AS7018 AT&T Services, Inc. ) ?>1 And results return 12.215.42.19 [hostname] => No Hostname [city] => [region] => [country] => US [loc] => 38,-97 [org] => AS7018 AT&T Services, Inc. ) ?>2 Trang web cũng cung cấp 1 PHP Class để lấy dữ liệu (tải về). Và đoạn mã sau là ví dụ để sử dụng Lớp PHP này 12.215.42.19 [hostname] => No Hostname [city] => [region] => [country] => US [loc] => 38,-97 [org] => AS7018 AT&T Services, Inc. ) ?>3 g, mạng lưới. de Đây là 1 geo-IP-server dùng để kiểm tra và trả về thông tin IP bao gồm đất nước, bang, thành phố… Các bạn hãy tham khảo đoạn mã sau để lấy dữ liệu 12.215.42.19 [hostname] => No Hostname [city] => [region] => [country] => US [loc] => 38,-97 [org] => AS7018 AT&T Services, Inc. ) ?>4 And data return 12.215.42.19 [hostname] => No Hostname [city] => [region] => [country] => US [loc] => 38,-97 [org] => AS7018 AT&T Services, Inc. ) ?>5 2, Giới thiệu một số trang web và dịch vụ cung cấp Cơ sở dữ liệu để tra cứu thông tinmột, tối đa. com Trang web này cung cấp các Cơ sở dữ liệu miễn phí với định dạng nhị phân (*. dat) và CSV (*. csv), giúp các bạn dễ dàng tra cứu thông tin liên quan của địa chỉ IP. Hiện nay có khá nhiều thư viện được dùng để đọc nội dung từ file DAT và CSV, các bạn tự tìm hiểu thêm phần này nhé Cơ sở dữ liệu được cung cấp tại 2 trang này
Ngoài ra, các bạn có thể tham khảo thêm API mà trang web cung cấp tại đây Với bài viết “Tra cứu GeoIP quốc gia bằng PHP” này thì các bạn có thể biết thêm về cách sử dụng PHP để lấy dữ liệu từ trang MaxMind này b, quốc gia ip2. com Trang web này cung cấp cơ sở dữ liệu MySQL chứa số lượng lớn danh sách địa chỉ IP và thông tin liên quan. Các bạn tải về tại đây Và dưới đây là một số đoạn mã mẫu được sử dụng để thao tác với cơ sở dữ liệu vừa tải xuống 12.215.42.19 [hostname] => No Hostname [city] => [region] => [country] => US [loc] => 38,-97 [org] => AS7018 AT&T Services, Inc. ) ?>6 and… 12.215.42.19 [hostname] => No Hostname [city] => [region] => [country] => US [loc] => 38,-97 [org] => AS7018 AT&T Services, Inc. ) ?>7 c, http. // phần mềm77. net/geo-ip/ Khi vào trang web này, tại mục Tải xuống ở cột bên phải, các bạn sẽ tải xuống danh sách các IP (v4) với định dạng CSV. Với một số hướng dẫn dưới đây, việc đọc dữ liệu từ tệp CSV trở nên đơn giản hơn
3, Tổng kếtBài viết này khá dài vì tôi muốn giới thiệu đến các bạn tất cả những gì tôi khám phá được. Nếu các bạn thấy trang nào cung cấp API/Database về IP thì cùng chia sẻ với mọi người nhé |