Можно ли предположить, что в
if (($i = (int)trim($_GET['user_input'])) != 0) {
// do stuff with $i
}
$i
может ли быть целое число?
Редактировать:
Я сейчас использую:
if (ctype_digit($i = $_GET['user_input'])) {
// do stuff with $i
}
Так что если ваш единственный вопрос, если это в любом случае int
тогда ответ:
да
Но если приведение к int завершится неудачно (например, input: 'a'
) $i
просто 0
Пример:
Ввод, вывод:
4 -> 4
-5 -> -5
"14" -> 15
"a" -> 0
"!" -> 0
array() -> 0
Примечание:
Если значение массива обрезается неудачно, и вы получаете ошибку
$i = intval($_GET['user_input']);
if ( $i != 0) {
// do stuff with $i
}
проверьте документацию Вот
Если вы проверите для целого числа, то
if(is_numeric($_GET['user_input']) && $_GET['user_input'] > 0) {
//your code
}
Проверь это
if(stripslashes(trim($_GET['user_input']))) > 0){
//your code Here
}