我安装了 MaxMind 的 GeoIp2 => https://github.com/maxmind/MaxMind-DB-Reader-php
还有 php 扩展https://github.com/maxmind/libmaxminddb用于更快的查找
当我像这样使用它时,一切正常:
require_once '/pathto/Composer/vendor/autoload.php';
use GeoIp2\Database\Reader;
$reader = new Reader('/pathto/GeoLite2-Country.mmdb');
$record = $reader->country('8.8.4.4');
当我尝试在我也使用自己的自动加载器的同一个 php 文件上使用它时,问题就开始了:
function __autoload($class_name) {
$p = explode("\\", $class_name);
require_once 'pathto/'.$p[2].'.class.php';
}
看起来这 2 个自动加载器相互碰撞,实际上我不能在与我的类混合的文件中使用 GeoIp2。
我该如何解决这个烦人的问题?非常感谢你。