転載元: http://www.21andy.com/blog/20100405/1799.html
GeoIP を使用するには 2 つの標準的な方法があります
最初の方法:
GeoIP の最初のデータをダウンロードするファイル
wget -c http://geolite.maxmind.com/download/geoip/database/GeoLitecountry/GeoIP.dat.gz
gunzip GeoIP.dat.gz
GeoIP の PHP をダウンロードしますファイルとして geoip.php として保存します
http://geolite.maxmind.com/download/geoip/api/php/geoip.inc
OK、直接使用してください
関数 utime () {
$ Time = Explode ("", Microtime ());
$ usec = (double) $ time [1]; $sec ;
}
$startTimes = utime();
.gz
include ( " geoip.php " ) $gi = geoip_open( " GeoIP.dat " , GEOIP_STANDARD)
// 国コードを取得
$country_code = geoip_country_code_by_addr( $gi , $_SERVER [ ' REMOTE_ADDR ' ]);使用する 使用する 使用する 使用する 使用する/ / 国名を取得します
$country_name = geoip_country_name_by_addr( $gi , $_SERVER [ ' REMOTE_ADDR ' ])
echo " あなたの国名は次のとおりです: $country_name
" ;
// データベースを閉じる
geoip_close( $gi );
// 実行終了時刻
$endTimes = utime();
$runTimes = sprintf ( ' %0.4f ' , ( $endTimes - $startTimes ));
echo " . $runTimes . " 秒で処理されます。" ;
この方法はデータベースとしてバイナリ ファイルを使用するため、非常に高速です。実行時間は0.001で試してみましたが、1秒間に1000回完了しても問題ありません。
2 番目の方法:
GeoIP を PHP 拡張機能としてインストールする
GeoIP データベースをダウンロードする
gzip -D GeoliteCity.dat.gz
E
Geoip の PECL 拡張機能をダウンロードします
ダウンロード アドレス http://pecl.php。 net/package/geoip
wget -c http://pecl.php.net/get/geoip-1.0.7.tgz
tar -zxvf geoip-1.0 .7.tgz
GeoIP をインストールするPECL拡張子
cd geoip-1.0.7
/usr/bin/phpize
./configure --with-php-config=/usr/bin/php-config --with-geoip
make
make install
追加
extension=geoip.so
phpを再起動するだけです
service httpd restart
これで、phpのGeoIPセクションを使用できますマニュアル機能
http:// cn.php.net/manual/en/book.geoip.php