我正在使用下面的代碼(簡化版本)來確定我的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)。 –