I had issue about FILTER_VALIDATE_INT function when i put 0 as entry value it show 'error' instead of 'ok':
$delivery = 0;
if (filter_var($delivery,FILTER_VALIDATE_INT)) {
echo 'ok';
}else{
echo 'error';
}
Compare with false, because PHP consider zero returning as false
if (false !== filter_var($delivery,FILTER_VALIDATE_INT)) {