- 1
- 2
- 3
- 4
$transaction_number = (int)$this->security->xss_clean(trim(htmlspecialchars(substr($transaction_number, 0, 50))));
if(!$transaction_number OR $transaction_number < 0)
$transaction_number = 0;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+165
$transaction_number = (int)$this->security->xss_clean(trim(htmlspecialchars(substr($transaction_number, 0, 50))));
if(!$transaction_number OR $transaction_number < 0)
$transaction_number = 0;
один из наших программистов пишет.
CodeIgniter.
Я узнал CI!
уверен 100%, что это не долбоебизм, а копипаст
И соответственно вариант !$transaction_number (NULL, FALSE) невозможен.
$transaction_number = $transaction_number > 0 ? $transaction_number : 0;
как то так? я правильно понял задумку автора?
$tn = (int)$tn > 0 ? (int)$tn : 0;
Но в этом случае дважды используется приведение типов :)
Или не?
А вообще сабж пытается выудить из введённых данных то, что ему нужно, даже в том случае, если туда внапихали SQL-инъекций, html-кода и ещё неизвестно чего. Автор заботится о хакире пользователе, чо =)
echo abs(-5); //5
Аффтар берет первую часть строки в 50 знаков (ОГО!) - это те данные которые ему нужны, потом антихакер, потом приведение.
Так что вы дважды неправы.