语言结构
魔方加密的 PHP 规范支持标准 PHP 规范中常用的语法结构。
echo
语法为:
echo statement;
echo statement_1[, statement_2[, ...]];
exit
语法为:
exit;
exit();
exit(statement);
请注意,exit(statement);
不论表达式的值是整数还是字符串,总会输出后才终止脚本,这与标准 PHP 规范中仅输出字符串值不同。
eval
语法为:
eval(statement);
list
语法为:
list($variable_1[, $variable_2[, ...]]) = expression;
global
详见 作用域 一节。
return
语法为:
return;
return();
return(statement);
unset
语法为:
unset($variable);
unset($variable_1[, $variable_2[, ...]]);
unset 可以删除变量、数组项、类实例属性。
break
语法为:
break;
break
用于跳出当前循环或 switch-case 结构。
continue
语法为:
continue;
continue
用于结束本次循环,进入循环的判断条件。
与标准 PHP 规范一样,若在 switch-case 结构中使用 continue
,将会跳出该结构而非结束本次循环,如下列代码:
while(1) {
switch(1) {
case 1: continue;
}
}
代码中的 continue
仅仅用于跳出 switch-case 结构而非结束本次 while 循环,与 break
作用一致。
if-elseif-else
if-elseif-else 是条件判断结构,其中 elseif
连写,否则将被视为嵌套的 if-else 结构。
switch-case-default
switch-case-default 是条件判断结构,语法如下:
switch(expression) {
case expression_1: ...
case expression_2: ...
default: ...
}
与标准 PHP 规范不同的是,在魔方加密的 PHP 规范中,default 子结构必须是最后一个选择条件。
while
while 是循环结构。
do-while
do-while 是循环结构。
for
for 是循环结构,语法如下:
for(expression_1; expression_2; expression_3)
statement;
expression_1、expression_2、expression_3 三个表达式均可省略。
foreach
foreach 是循环结构,用于从头到尾遍历一个数组,语法如下:
foreach(expression as $key => $value) statement;
foreach(expression as $value) statement;
foreach(variable as $key => & $value) statement;
foreach(variable as & $value) statement;
请注意,切勿在 foreach 结构中对循环目标使用 reset()
、next()
函数,否则可能会出现不可预知的后果。
运算符优先级
运算符 | 结合性 | |||
---|---|---|---|---|
require require_once include include_once | 右 | |||
clone new | 无 | |||
[ | 左 | |||
** | 右 | |||
++ — ~ (int) (double) (string) (array) (object) (boolean) @ | 右 | |||
instanceof | 无 | |||
! | 右 | * / % | 左 | |
+ - . | 左 | |||
<< >> | 左 | |||
< <= > >= | 无 | |||
== != === !== | 无 | |||
& | 左 | |||
^ | 左 | |||
| | 左 | |||
&& | 左 | |||
|| | 左 | |||
? : | 左 | |||
= += -= = *= /= .= %= &= |= ^= <<= >>= => | 右 | |||
and | 左 | |||
xor | 左 | |||
or | 左 | |||
, | 左 |
表格由上至下,优先级由高变低。