检查整数或浮点值

Aut*_*cus 9 php

我有这个

$number = 0.5

if (is_float($number))
{
  echo 'float';
}
else
{
  echo 'not float';
}
Run Code Online (Sandbox Code Playgroud)

并且它不会浮动.可能是什么原因,谢谢

Art*_*cto 41

可能$number实际上是一个字符串:"0.5".

is_numeric来代替.该is_*族检查变量的实际类型.如果您只知道变量是否为数字,无论它实际上是a int,a float还是a string,都使用is_numeric.

如果你需要它有一个非零小数部分,你可以这样做:

//if we already know $number is numeric...
if ((int) $number == $number) {
    //is an integer
}
Run Code Online (Sandbox Code Playgroud)


Noo*_*oor 5

如果您只是检查 the.(dot)那么您不需要将typecast其作为字符串进行操作[strpos][1]()

if (strpos($number,'.') !== false) {

    echo 'true';
}else {
    echo 'false';
}
Run Code Online (Sandbox Code Playgroud)