1

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';
}
M.J
  • 276
  • 1
  • 4
  • 13

2 Answers2

2

Compare with false, because PHP consider zero returning as false

if (false !== filter_var($delivery,FILTER_VALIDATE_INT)) {
splash58
  • 26,043
  • 3
  • 22
  • 34
2

Check for strict type check it will work,

$delivery = 0;
if (filter_var($delivery,FILTER_VALIDATE_INT) !== false) {
    echo 'ok';
}else{
    echo 'error';
}

Demo

Rahul
  • 18,271
  • 7
  • 41
  • 60