如何确定除以8的数字是否为整数?
例如:
32 % 8 = 4, it is an integer.
25 % 8 = 3.125, it is not an integer.
我需要一个像以下一样的工作代码:
if ($str % 8 == integer){
// continue working
}
答案 0 :(得分:7)
%
运算符modulo将始终返回一个整数 - 它是除法的剩余部分。
如果您的意思是想要检查数字是否可以被8整除,那么请执行
if ($str % 8 == 0) {
... evenly divisible by 8 ...
}
答案 1 :(得分:2)
您可以使用if (val % 8 == 0)
或更加棘手的方式,例如val & 0x0FFF == 0
使用按位运算符。
不知怎的,它们以相同的方式工作:第一个片段检查除以8的除数是否为零,而第二次检查数字是否没有1,2或4的任何二进制数字,这将使数字不可被8整除。
答案 2 :(得分:1)
我认为这就是你所需要的:
if(is_int($integer)) {
// do something with integer
}