The behavior is mentioned on the filter_input documentation page under Return Values but that is not overly helpful if one is just looking here.
Returns: PHP Version: 5.2.14 //On MY server, may be different depending on which version you have installed.
Just check if NULL is among the returned elements and you're done.
Often I see some code like the following:$value = "12";if( filter_var($value, FILTER_VALIDATE_INT) )The above works as intended, except when $value is "0". For the correct behavior, you have not only to check if it is equal (==) to false, but also identic (===) to FALSE:$value = " 0 ";if( filter_var($value, FILTER_VALIDATE_INT) === FALSE )I hope, I could help.
I've been using that since PHP 5.2, and as of PHP 5.6.8 it still works.