PHP中的两个函数is_numeric和ctype_digit都是检测字符串是否是数字,但也存在一点区别

is_numeric:检测是否为数字字符串,可为负数和小数

ctype_digit:检测字符串中的字符是否都是数字,负数和小数会检测不通过

注意,参数一定要是字符串,如果不是字符串,则会返回0/FASLE

下面是测试例子:

复制代码 代码如下:

$a = 0001111222 ;
var_dump($a);
var_dump(is_numeric($a)); //true
var_dump(ctype_digit($a)); //true
$a = 0.1 ;
var_dump($a);
var_dump(is_numeric($a)); //true
var_dump(ctype_digit($a)); //false

$a = -1 ;
var_dump($a);
var_dump(is_numeric($a)); //true
var_dump(ctype_digit($a)); //false

$a = a ;
var_dump($a);
var_dump(is_numeric($a)); //false
var_dump(ctype_digit($a)); //false 
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐