<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. php語言

    php使用GeoIP庫實例

    時間:2025-04-08 23:45:16 php語言 我要投稿
    • 相關推薦

    php使用GeoIP庫實例

      需要注意的是maxmind是geoip數據庫的提供方,就跟隨百分網小編一起去了解下吧,想了解更多相關信息請持續關注我們應屆畢業生考試網!同時也提供了很多語言的sample和api說明文檔。

      比如php,和php的geoip庫是有很大區別的,包含使用方式,接口函數。

      php官方的geoip需要配置php環境,加載geoip.dll庫,并在php.ini中指定GEOIP庫地址。

      maxmind提供一系列 .inc 和 .php 對環境無依賴,只要支持php,直接require后即可使用。

      一、GEOIP數據庫

      http://dev.maxmind.com/geoip/geolite

      細分到國家:GeoLite Country

      細分到城市:GeoLite City

      二、php官方geoip.dll庫

      下載dll http://windows.php.net/downloads/pecl/releases/geoip/1.0.8/

      修改php.ini,啟用geoip庫:

      復制代碼 代碼如下:extension=php_geoip.dll

      追加geoip段,指定數據庫位置:

      復制代碼 代碼如下:[geoip]

      geoip.custom_directory = "D:php5.3geo"

      測試代碼

      注意geoip.dll中使用的 GeoIPCity.dat 即 GeoLiteCity.dat,用的時候注意看提示

      復制代碼 代碼如下:

      echo geoip_country_name_by_name( "8.8.8.8" ) . "n";

      print_r( geoip_record_by_name( "8.8.8.8" ) );

      echo geoip_country_name_by_name( "61.139.2.69" ). "n";

      print_r( geoip_record_by_name( "61.139.2.69" ) );

      三、MaxMind官方php文件函數庫

      文檔和示例:http://dev.maxmind.com/geoip/downloadable

      修改maxmind示例中 sample.php 和 sample_city.php 中 GeoIP.dat/GeoLiteCity.dat 路徑為你自己的路徑

      同一目錄用 “./GeoIP.dat” 或 “./GeoLiteCity.dat” 即可。

      詳細到國家

      復制代碼 代碼如下:

      include("geoip.inc");

      $gi = geoip_open( "./GeoIP.dat", GEOIP_STANDARD );

      echo geoip_country_code_by_addr($gi, "8.8.8.8") . "t" . geoip_country_name_by_addr($gi, "8.8.8.8") . "n";

      echo geoip_country_code_by_addr($gi, "61.139.2.69") . "t" . geoip_country_name_by_addr($gi, "61.139.2.69") . "n";

      geoip_close($gi);

      詳細到國家城市

      復制代碼 代碼如下:

      include("geoipcity.inc");

      include("geoipregionvars.php");

      $gi = geoip_open("./GeoLiteCity.dat",GEOIP_STANDARD);

      $record = geoip_record_by_addr($gi,"8.8.8.8");

      print $record->country_code . " " . $record->country_code3 . " " . $record->country_name . "n";

      print $record->region . " " . $GEOIP_REGION_NAME[$record->country_code][$record->region] . "n";

      print $record->city . "n";

      print $record->postal_code . "n";

      print $record->latitude . "n";

      print $record->longitude . "n";

      print $record->metro_code . "n";

      print $record->area_code . "n";

      print $record->continent_code . "n";

      print "n-----n";

      $record = geoip_record_by_addr($gi,"61.139.2.69");

      print $record->country_code . " " . $record->country_code3 . " " . $record->country_name . "n";

      print $record->region . " " . $GEOIP_REGION_NAME[$record->country_code][$record->region] . "n";

      print $record->city . "n";

      print $record->postal_code . "n";

      print $record->latitude . "n";

      print $record->longitude . "n";

      print $record->metro_code . "n";

      print $record->area_code . "n";

      print $record->continent_code . "n";

      geoip_close($gi);

      看自己開發環境和具體情況決定用哪種</p

    【php使用GeoIP庫實例】相關文章:

    PHP時間戳使用實例代碼03-10

    如何使用php操作redis隊列實例04-16

    php中使用redis隊列操作實例代碼05-16

    PHP時間戳使用實例代碼「詳細版」05-06

    PHP中使用smarty生成靜態文件的實例04-13

    PHP使用中數據庫使用方法05-21

    php畫圖實例07-16

    php使用curl發送json格式數據實例07-08

    php使用html5實現多文件上傳實例02-27

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人