1

所以我将一个 VBA 应用程序移植到 PHP 并遇到了这个美妙的小代码块:

expr1 = expr2 Mod expr3 = 0

我认为它的行为类似于三元运算符,但是当我将其分解为简单的 if then 语句时,结果并不像预期的那样。所以我请求出色的堆栈溢出社区来帮助我,并用易于理解的术语来表达。我知道通过查看其他答案,我不会失望。[/结束 brown_nose>]

4

2 回答 2

8

它将 expr1 分配给一个布尔值,该值指示 expr2 是否可以被 expr3 均分(没有余数)。请记住,= 在 VB 中意味着 == :D。

下面是隐含括号的样子:

expr1 = ((expr2 Mod expr3) = 0)
于 2009-07-18T01:33:58.123 回答
5

它是模运算符:

a MOD b = remainder of a/b

在 PHP 中它是 % 符号:

a%b

在此处查看 php 文档

所以这条线

expr1 = expr2 Mod expr3 = 0

表示: expr1 为真,如果 expr2 可以除以 expr3 而没有任何余数:例如:

20 MOD 5 = 0 ==> TRUE
22 MOD 5 = 2 ==> FALSE
于 2009-07-18T01:32:50.310 回答