如$a=1.5,$b=0.5,$a/$b=3
如何判断这个结果3是个整数,我直接用is_int得到的结果是错的,他把结果3当作浮点数来处理

解决方案 »


  1. $a=1.5;
    $b=0.5;
    (int)$s = $a/$b;
    echo $s;
      

  2. if (1.5/0.4 != (int)(1.5/0.4)) echo '不能整除';
      


  3. $a=1.5;
    $b=0.5;
    $r=$a/$b;
    if((number_format($s)-$s)!=0)
    echo "不能整除";
    //好吧,这个很罗嗦
      

  4. 注意浮点运算是有误差的,所以楼上用!=来判断都是有bug的
      

  5. $a=1.5;
    $b=0.5;
    $r=$a/$b;
    $is_int =($r-floor($r)>0)?false:true;
      

类似问题 »