我正在使用下面的代码(简化版本)来确定我的IP是否在黑名单上。我需要修改它才能确定IP是否在白名单上。该函数将要求我查看返回的特定代码。
127.0.0.1
127.0.0.2
127.0.0.3
127.0.0.4
127.0.0.5
如何调整此脚本以在脚本运行时返回(代码)输出值?
$host = '222.22.222.222';
$rbl = 'hostkarma.junkemailfilter.com';
$rev = array_reverse(explode('.', $host));
$lookup = implode('.', $rev) . '.' . $rbl;
if ($lookup != gethostbyname($lookup)) {
echo "ip: $host is listed in $rbl\n";
} else {
echo "ip: $host NOT listed in $rbl\n";
}
编辑:对不起球员,脚本的功能上面会返回确认,如果IP地址是在$ RLB进入黑名单。但是,Hostkarma会返回一个代码,即上面显示的127.0代码之一,因为每个代码都表示不同的块状态。我需要获取代码。 “echo $ lookup;”只是返回反向查找,如下所示:222.222.22.222.hostkarma.junkemailfilter.com
你可以尝试澄清你想要的预期输出是什么?我最好打赌你的意思是迈克尔的回答,但我怀疑这是你真正需要的(只是因为它太简单)。 – Evert
如果返回的字符串相同,则表示查找失败(请参阅手册http://ca.php.net/gethostbyname)。 –