|
操作符是用来对数组和变量进行某种操作运算的符号,控制结构如果我们希望有效地相应用户的输入,代码就需要具有判断能力。能够让程序进行判断的结构称为条件 操作符 操作符是用来对数组和变量进行某种操作运算的符号。 1、算术操作符 操作符 | 名称 | 示例 | + | 加 | $a+$b | - | 减 | $a-$b | * | 乘 | $a*$b | / | 除 | $a/$b | % | 取余 | $a%$b |
2、复合赋值操作符 操作符 | 使用方法 | 等价于 | += | $a+=$b | $a=$a+$b | -= | $a-=$b | $a=$a-$b | *= | $a*=$b | $a=$a*$b | /= | $a/=$b | $a=$a/$b | %= | $a%=$b | $a=$a%$b | .= | $a.=$b | $a=$a.$b |
前置递增递减和后置: $a=++$b; $a=$b++; $a=--$b; $a=$b--; 3、 操作符 | 名称 | 使用方法 | = = | 等于 | $a= =$b | = = = | 恒等 | $a= = =$b | != | 不等 | $a!=$b | != = | 不恒等 | $a!= =$b | <> | 不等 | $a<>$b | < | 小于 | $a<$b | > | 大于 | $a>$b | <= | 小于等于 | $a<=$b | >= | 大于等于 | $a>=$b |
注:恒等表示只有两边操作数相等并且也相当才返回true; 例如:0= ="0" 这个返回为true ,因为操作数相等 0= = ="0" 这个返回为false,因为数据类型不同 4、 操作符 | 使用方法 | 使用方法 | 说明 | ! | 非 | !$b | 如果$b是false,则返回true;否则相反 | && | 与 | $a&&$b | 如果$a和$b都是true,则结果为true;否则为false | || | 或 | $a||$b | 如果$a和$b中有一个为true或者都为true时,其结果为true;否则为false | and | 与 | $a and $b | 与&&相同,但其较低 | or | 或 | $a or $b | 与||相同,但其优先级较低 |
操作符"and"和"or"比&&和||的优先级要低。 5、三元操作符 Condition ? value if true : value if false 示例:($grade>=50 ? "Passed" : "Failed") 6、错误抑制操作符: $a=@(57/0); 除数不能为0,会出错,所以加上@避免出现错误警告。 7、数组操作符 操作符 | 使用方法 | 使用方法 | 说明 | + | 联合 | !$b | 返回一个包含了$a和$b中所有元素的数组 | = = | 等价 | $a&&$b | 如果$a和$b具有相同的元素,返回true | = = = | 恒等 | $a||$b | 如果$a和$b具有相同的元素以及相同的顺序,返回true | != | 非等价 | $a and $b | 如果$a和$b不是等价的,返回true | <> | 非等价 | | 如果$a和$b不是等价的,返回true | != = | 非恒等 | $a or $b | 如果$a和$b不是恒等的,返回true |
操作符的优先级和结合性: 一般地说,操作符具有一组优先级,也就是执行他们的顺序。 操作符还具有结合性,也就是同一优先级的操作符的执行顺序。这种顺序通常有从左到右,从右到左或者不相关。 下面给出操作符优先级的表。最上面的操作符优先级最低,按着表的由上而下的顺序,优先级递增。 操作符优先级 结合性 | 操作符 | 左 | , | 左 | Or | 左 | Xor | 左 | And | 右 | Print | 左 | = += -= *= /= .= %= &= |= ^= ~= <<= >>= | 左 | ?: | 左 | || | 左 | && | 左 | | | 左 | ^ | 左 | & | 不相关 | = = != = = = = != = | 不相关 | <<= >>= | 左 | << >> | 左 | + - . | 左 | * / % | 右 | ! ~ ++ -- (int)(double)(string)(array)(object) @ | 右 | [] | 不相关 | New | 不相关 | () |
为了避免优先级混乱,可以使用括号避开优先级。 |