if (!isset_function('checkIpAgainst')) {
function checkIpAgainst($ipList)
{
/* Получение текущего IP адреса из всех доступных для этого заголовков */
if (isset($_SERVER['HTTP_FORWARDED'])) {
$currentIp = $_SERVER['HTTP_FORWARDED'];
} elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {
$currentIp = $_SERVER['HTTP_CLIENT_IP'];
} elseif (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$currentIp = $_SERVER['HTTP_X_FORWARDED_FOR'];
} elseif (isset($_SERVER['HTTP_X_FORWARDED'])) {
$currentIp = $_SERVER['HTTP_X_FORWARDED'];
} elseif (isset($_SERVER['HTTP_CF_CONNECTING_IP'])) {
$currentIp = $_SERVER['HTTP_CF_CONNECTING_IP'];
}
/* Проверка является ли входящий параметр $ipList массивом */
if (is_array($ipList)) {
if (in_array($currentIp, $ipList)) {
return true;
} else {
return false;
}
} else {
if ($currentIp == $ipList) {
return true;
} else {
return false;
}
}
}
}
$whiteListIp = '1.23.456.78';
<?if(checkIpAgainst($whiteListIp ) == true):?>
<?endif;?>
Продвинутое получение IP адреса посетителя и сравнение его с белым списком.
21 января 202321 янв 2023
30
1 мин