- var_dump: documentation ( source)
- ctype_digit: documentation ( source)
<?php
function is_natural($val) {
$val = (string)$val;
return (bool)ctype_digit($val) && $val === (string)(int)$val && $val > 0;
}
var_dump(is_natural(15)); // true
var_dump(is_natural(0)); // false
var_dump(is_natural(-1)); // false
var_dump(is_natural('5')); // true
var_dump(is_natural('01')); // false
var_dump(is_natural('1.5')); // false
var_dump(is_natural('0x18')); // false