rya*_*nve 14 php types numbers
我的理解是......
如果 is_numeric($input) === true
那么
is_float($input) === true 要么
is_int($input) === true 要么
$input === 0 要么
$input 是一个数字字符串(意思是如果它没有用引号括起来,它会满足前3个中的一个).
那是准确的吗?还有其他差异吗?
Lev*_*son 32
请参阅有关is_numeric的 PHP文档.它讨论了所允许的一切,而且它不仅仅是is_float和is_int.
同样重要的是要注意,is_int只能处理类型为整数的事物,这意味着不允许字符串表示.验证表单输入是整数时,这是一个常见问题.您应该使用filter_var过滤器系列中的过滤器系列FILTER_VALIDATE_INT.对于花车,请使用FILTER_VALIDATE_FLOAT.
另外,如果你想检查一个整数的原因是为了确认参数为一个int,然后在PHP 7,你可以这样做:
function foo(int $i) {
// $i is guaranteed to be an int (is_int) will be true
}
Run Code Online (Sandbox Code Playgroud)
PHP 7有两种不同的转换为int的模式; 这个答案解释了一下.
请注意,如果您要验证表单元素的内容,这可能不是您想要的.使用filter_var解决方案.
| 归档时间: |
|
| 查看次数: |
24905 次 |
| 最近记录: |