dimagolov
я бы написал
if ($Value[0]==='-') $Value[0]='0';
return (($l=strlen($Value))<21 && strspn ($Value,'0123456789') === $l)
можно добавить проверку первого символа на +, но реально я этого не встречал еще
-~{}~ 16.11.09 03:29:
а вот так я получаю positive int32 из GET/POST
/**
* returns int on success, FALSE on the incorrect input and NULL if absent
*/
function filter_pos_int($var,$SCOPE=INPUT_POST){
return filter_input($SCOPE,$var,FILTER_VALIDATE_INT,array('options'=>array('min_range'=>1)));
}
$page = filter_pos_int('page',INPUT_GET);