使用没有GeoIP PECL扩展的Maxmind geo IP数据库?

时间:2011-12-22 07:04:24

标签: php geo

我正在尝试将我的文件上传到免费虚拟主机上,然后试用。我遇到了客户端ip定位器输出的问题。我正在使用maxmind数据库。 “GeoIP.dat”

<?php print geoip_database_info(GEOIP_COUNTRY_EDITION); ?>

,输出

Fatal error: Call to undefined function geoip_database_info() in /home/u_fg176/public_html/index.php on line 15

是否找不到函数geoip_database_info(),因为这个托管没有为php安装pecl ext?或者是否会出现此错误的其他原因?

2 个答案:

答案 0 :(得分:2)

确实是因为你的主机没有安装PECL扩展。您可以使用有点equivalent PEAR extension Net_GeoIP代替,它是用PHP编写的,可以简单地包含在您的项目中:

set_include_path(get_include_path() . PATH_SEPARATOR . '/path/to/Net_GeoIP');
require_once 'Net_GeoIP/Net/GeoIP.php';

$GeoIP = Net_GeoIP::getInstance(GEOIP_COUNTRY_EDITION);
$location = $GeoIP->lookupLocation($ipAddress);

答案 1 :(得分:0)

是的,这就是原因。要求他们启用或扩展,或者在他们不合作的情况下寻找替代方案。