PHP“is_numeric”接受“E”作为数字

我注意到PHP is_numeric()接受“E”作为数字.
我有一个字符串:“88205052E00”,我希望结果是:不是数字.

这是我测试的代码.

<?php

$notnumber = '88205052E00';

if(is_numeric($notnumber)) {
    echo $notnumber . ' is a number';
} else {
    echo $notnumber . ' is NOT a number';
}

?>

上面的代码给出了结果:

88205052E00 is a number

我怎样才能得到结果:88205052E00不是数字?

最佳答案
我会保留答案,但这有助于指出ctype_digit的缺点在于它不喜欢 – 或者……

更有可能的是你想使用ctype_digit来检查提供的字符串text中的所有字符是否都是数字.

is_nounmeric的位置 – 查找变量是数字还是数字字符串

<?php

$s = "88205052E00";

if(ctype_digit($s)){
    echo "Yes";
} else {
    echo "No";
}

返回否.

转载注明原文:PHP“is_numeric”接受“E”作为数字 - 代码日志