Web Мастерская
Как проверить является ли число положительным | отрицательным на PHP
Чтобы выяснить: Является число положительным или отрицательным достаточно сравнить его с нулём, то есть больше или меньше нуля. Если число больше нуля, значит оно положительное, если меньше, значит отрицательное.
Можно в виде функции:
Проверить: Является ли число положительным:
Проверить: Является ли число отрицательным:
...
$n = -7;
if ($n > 0)
{
echo 'Положительное число.';
}
else
{
echo 'Отрицательное число.';
}
Можно в виде функции:
// Проверка числа (Положительное | Отрицательное)
function numberCheck($number)
{
return $number > 0;
} // End: Проверка числа (Положительное | Отрицательное)
Проверить: Является ли число положительным:
if (numberCheck($n))
{
echo 'Положительное число.';
}
Проверить: Является ли число отрицательным:
if (!numberCheck($n))
{
echo 'Отрицательное число.';
}
- Жалоба
Как разделить строку по символам, при первом его появлении
При помощи функции
И я получаю из строки:
Чтобы функция разбивала строку в массив, только на первом разделители, следует использовать третий параметр функции
Готово....
explode()
мы можем разбить строку в массив, по указанному символу. В моём случае указанный символ (Разделитель) - это двоеточие (:
):
$part = explode(':', $param);
И я получаю из строки:
user:1
массив из двух элементов. Тут всё просто. Но когда мне приходит строка такого вида: origin:https://danfa.net
, сценарий отрабатывает неправильно. Потому что PHP видит в строке два разделителя, первый, где и должен быть, второй в URL и разбивает строку в массив из трех элементов, вместо двух.Чтобы функция разбивала строку в массив, только на первом разделители, следует использовать третий параметр функции
explode()
, что называется лимит. Делаем так:
$part = explode(':', $param, 2);
Готово....
Как включить / выключить дебаг или режим отладки в Oxwall
Для того, что включить дебаг и режим отладки в движке Oxwall, необходимо открыть: ow_includes/config.php, найти:
Заменить на:
То есть надо сменить
Готово, дебаг активирован.
Отключается дебаг путём замены
Возможно, будет интересно: Блог: Поиск ошибок в PHP | Дебаг....
/**
* Make changes in this block if you want to enable DEV mode and DEBUG mode
*/
define('OW_DEBUG_MODE', false);
define('OW_DEV_MODE', false);
define('OW_PROFILER_ENABLE', false);
Заменить на:
/**
* Make changes in this block if you want to enable DEV mode and DEBUG mode
*/
define('OW_DEBUG_MODE', true);
define('OW_DEV_MODE', true);
define('OW_PROFILER_ENABLE', true);
То есть надо сменить
false
на true
.
Готово, дебаг активирован.
Отключается дебаг путём замены
true
на false
, в этих же строках.Возможно, будет интересно: Блог: Поиск ошибок в PHP | Дебаг....
Как заблокировать IP адрес пользователя в Nginx
О том, как заблокировать IP в .htaccess, я рассказывал: Как заблокировать IP адрес пользователя в .htaccess, тут я расскажу, как заблокировать нежелательные IP адреса в Nginx, как это сделал я.
И так, у меня поселился один постоялец, крутится он на сайте круглые сутки, видимо это бот. Первые цифры IP:
Перечитываю конфигурацию Nginx командой:
Готово! Обратите внимание на то, как написан IP:
После добавления записи, которая кого то блокирует, в моем файле: "var/www/httpd-logs/danfa.net.error.log", появляются записи (Доступ закрыт...
И так, у меня поселился один постоялец, крутится он на сайте круглые сутки, видимо это бот. Первые цифры IP:
141.8
- это неизменные цифры, остальные постоянно меняются. Было решено заблокировать его, для этого я открываю "etc/nginx/nginx.conf" и после: http {
добавляю:
deny 141.8.0.0/16;
Перечитываю конфигурацию Nginx командой:
nginx -s reload
Готово! Обратите внимание на то, как написан IP:
141.8.0.0/16
- первые две цифры (141.8
), как есть, дальше следуют нули и /16
- это говорит о том, что цифры могут быть абсолютно любыми (диапазон). Если надо заблокировать, какой то конкретный IP, например: 141.8.142.114
, пишем так:
deny 141.8.142.114;
После добавления записи, которая кого то блокирует, в моем файле: "var/www/httpd-logs/danfa.net.error.log", появляются записи (Доступ закрыт...
Как заблокировать IP адрес пользователя в .htaccess
Сразу к делу! Допустим, нам необходимо заблокировать вот такой IP: xx.xx.xx.xxx, конечно, вместо иксов должны быть цифры, но в качестве пример, пойдет. Делаем так:
Пример приведен с одним IP, чтобы заблокировать IP больше, просто, после строки:
Добавляем Deny from тут IP и так каждый IP с новой строки:
Если есть необходимость заблокировать все IP адреса, которые начинаются одинаково, например:
То тут необязательно писать каждый IP отдельно, достаточно написать так:
И все IP, что начинаются на 38.99.82. будут заблокированы. Обратите внимание на точку в конце, если точку убрать, то блокироваться будут IP такого вида: 3...
#User IP Banning
<Limit GET POST>
Order allow,deny
Deny from xx.xx.xx.xxx
Allow from All
</Limit>
Пример приведен с одним IP, чтобы заблокировать IP больше, просто, после строки:
Deny from xx.xx.xx.xxx
Добавляем Deny from тут IP и так каждый IP с новой строки:
#User IP Banning
<Limit GET POST>
Order allow,deny
Deny from xx.xx.xx.xxx
Deny from xx.xx.xx.xxx
Deny from xx.xx.xx.xxx
Deny from xx.xx.xx.xxx
Deny from xx.xx.xx.xxx
Allow from All
</Limit>
Если есть необходимость заблокировать все IP адреса, которые начинаются одинаково, например:
38.99.82.191
38.99.82.192
38.99.82.193
То тут необязательно писать каждый IP отдельно, достаточно написать так:
38.99.82.
И все IP, что начинаются на 38.99.82. будут заблокированы. Обратите внимание на точку в конце, если точку убрать, то блокироваться будут IP такого вида: 3...