我只是想知道为什么php有像is_int()
这样的函数。文档说明
测试变量是数字还是数字字符串(例如表单输入,总是字符串)
我确信没有人必须检查静态分配的变量的类型。所以有人请告诉我有什么情况,函数is_int()
真的有用吗?
答案 0 :(得分:1)
完整的解决方案......
这是代码
<?php
$values = array(23, "23", 23.5, "23.5", null, true, false);
foreach ($values as $value) {
echo "is_int(";
var_export($value);
echo ") = ";
var_dump(is_int($value));
}
?>
这是输出
is_int(23) = bool(true)
is_int('23') = bool(false)
is_int(23.5) = bool(false)
is_int('23.5') = bool(false)
is_int(NULL) = bool(false)
is_int(true) = bool(false)
is_int(false) = bool(false)
答案 1 :(得分:1)
考虑用户表单输入:
$_POST['integer'] = "3";
$integer = +$_POST['integer']; // convert to a number
var_dump(is_int($integer)); // bool(true)
$_POST['float'] = "3.5";
$float = +$_POST['float']; // convert to a number
var_dump(is_int($float)); // bool(false)
答案 2 :(得分:0)
此功能在以下场景中非常有用,
$a = 5;
//some functionality
function passbyref(&$b)
{
$b = "45";
}
passbyref($a);
if(is_int($a))
{
print "Yes it is int";
}
答案 3 :(得分:0)
它查找给定变量的类型是否为integer
。
这是我发现的例子:
$values = array(23, "23", 23.5, "23.5", null, true, false);
foreach ($values as $value) {
echo "is_int(";
var_export($value);
echo ") = ";
var_dump(is_int($value));
}
以上示例将输出:
is_int(23) = bool(true)
is_int('23') = bool(false)
is_int(23.5) = bool(false)
is_int('23.5') = bool(false)
is_int(NULL) = bool(false)
is_int(true) = bool(false)
is_int(false) = bool(false)
要了解更多信息:Click here