[問題] 關於用ip判斷該使用者的國家的問題...
最近我想使用ip來判斷客戶端來自哪個國家,
於是上網找了一下,
雖然有找到http://api.hostip.info/country.php?ip=xxx.xxx.xxx.xxx這個網頁來查詢
不過萬一這個網站出了問題就沒用了
於是找了另外一個方法
就是用ip-to-country.csv這個對應表來找客戶端ip所對應的值是介於哪個範圍之間
但是這又衍生出另外一個問題出來,那就是:「檔案太大了」
一個ip-to-country.csv檔往往都超過5 MB以上,要php讀取該檔案並找尋其ip所介定的範
圍在哪裡實在是太困難了,因此要找到該ip所在的範圍為何要怎麼做才能快又準確? 如何
在一個檔案中找尋第一次出現該字首處? 以上是我的問題,若能幫我解決敬請多多指教,
謝謝各位!
ip-to-country.csv(dbip-country.csv)位址:
http://download.db-ip.com/free/dbip-country-2015-05.csv.gz
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.80.132.171
※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1430902617.A.DBB.html
→
05/06 16:59, , 1F
05/06 16:59, 1F
→
05/06 17:16, , 2F
05/06 17:16, 2F
→
05/06 17:25, , 3F
05/06 17:25, 3F
→
05/06 18:02, , 4F
05/06 18:02, 4F
→
05/06 18:02, , 5F
05/06 18:02, 5F
→
05/06 18:55, , 6F
05/06 18:55, 6F
推
05/06 19:06, , 7F
05/06 19:06, 7F
→
05/06 19:50, , 8F
05/06 19:50, 8F
→
05/06 20:27, , 9F
05/06 20:27, 9F
→
05/06 20:56, , 10F
05/06 20:56, 10F
→
05/06 21:58, , 11F
05/06 21:58, 11F
→
05/06 23:50, , 12F
05/06 23:50, 12F
→
05/07 06:36, , 13F
05/07 06:36, 13F
推
05/07 09:50, , 14F
05/07 09:50, 14F
→
05/07 09:52, , 15F
05/07 09:52, 15F
→
05/07 09:52, , 16F
05/07 09:52, 16F