簡體   English   中英

歐洲的 IP 范圍? 用PHP檢測?

[英]IP range for Europe? Detect with PHP?

我希望使用 PHP 和 JavaScript 來實施“Cookie 法”。 我認為讓來自其他大陸的用戶在打開我的網站時填寫表格毫無意義,但不幸的是,歐盟要求這樣做。

我嘗試搜索歐洲的 IP 范圍,但一無所獲。

我知道我可以使用 expand() 和 $_SERVER['remote_addr'] 和 substr() 來隔離特定的 IP 范圍我面臨的問題是將哪些 IP 列入黑名單,即 194.XXX.XXX.XXX - 198.XXX.XXX .XXX?

另外,實現這一點的最佳方法是什么,使用 if else 語句是否有效? 我的意思是如果用戶在歐洲,顯示一些 JS,如果用戶在另一個顯示其他 JS。

提前致謝!

您可以使用地理位置數據庫來檢查使用 PHP 中的 REMOTE_ADDR 的國家/地區。

例如, GeoLite提供了一個 PHP API 庫

$ip = $_SERVER['REMOTE_ADDR'];

$country = file_get_contents("http://api.wipmania.com/".$ip."?[YOUR SITE URL]");

$eu_countries = array("BE", "BG", "CZ", "DK", "DE", "EE", "IE", "EL", "ES", "FR", "HR", "IT", "CY", "LV", "LT", "LU", "HU", "MT", "NL", "AT", "PL", "PT", "RO", "SI", "SK", "FI", "SE");

$checked = in_array(strtoupper($country), $eu_countries);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM