@dandyvssega
Начинаю кодить

Не писать информацию для определенных IP в php?

Всем добра.Подскажите пожалуйста,как не записывать данные в лог для айпи маски 127.0.0.0/16

<?php 
$bad_ip = 127.0.0.0; // Для одного айпи все понятно,а как сделать маску чтобы от 127.0.0.0 до 127.0.255.255 не писал инфу ?
$file = 'log';
if ($_SERVER['REMOTE_ADDR'] != $bad_ip) 
{
file_put_contents($file, print_r($_SERVER["REMOTE_ADDR"] , true), FILE_APPEND);
file_put_contents($file, print_r(" " , true), FILE_APPEND);
file_put_contents($file, print_r($_SERVER["HTTP_USER_AGENT"], true), FILE_APPEND);
file_put_contents($file, print_r(" " , true), FILE_APPEND);
file_put_contents($file, print_r($_SERVER["HTTP_HOST"], true), FILE_APPEND);
file_put_contents($file, print_r(" " , true), FILE_APPEND);
file_put_contents($file, print_r($_SERVER["HTTP_REFERER"], true), FILE_APPEND);
file_put_contents($file, print_r("\n\r" , true), FILE_APPEND);
}
?>
  • Вопрос задан
  • 92 просмотра
Решения вопроса 1
SagePtr
@SagePtr
Еда - это святое
php.net/manual/ru/function.ip2long.php
Маска /16 означает, что проверять нужно старшие 16 битов. Остальные биты зануляйте и сравнивайте.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы