语言结构

魔方加密的 PHP 规范支持标准 PHP 规范中常用的语法结构。

echo

语法为:

  1. echo statement;
  2. echo statement_1[, statement_2[, ...]];

exit

语法为:

  1. exit;
  2. exit();
  3. exit(statement);

请注意,exit(statement); 不论表达式的值是整数还是字符串,总会输出后才终止脚本,这与标准 PHP 规范中仅输出字符串值不同。

eval

语法为:

  1. eval(statement);

list

语法为:

  1. list($variable_1[, $variable_2[, ...]]) = expression;

global

详见 作用域 一节。

return

语法为:

  1. return;
  2. return();
  3. return(statement);

unset

语法为:

  1. unset($variable);
  2. unset($variable_1[, $variable_2[, ...]]);

unset 可以删除变量、数组项、类实例属性。

break

语法为:

  1. break;

break 用于跳出当前循环或 switch-case 结构。

continue

语法为:

  1. continue;

continue 用于结束本次循环,进入循环的判断条件。

与标准 PHP 规范一样,若在 switch-case 结构中使用 continue,将会跳出该结构而非结束本次循环,如下列代码:

  1. while(1) {
  2. switch(1) {
  3. case 1: continue;
  4. }
  5. }

代码中的 continue 仅仅用于跳出 switch-case 结构而非结束本次 while 循环,与 break 作用一致。

if-elseif-else

if-elseif-else 是条件判断结构,其中 elseif 连写,否则将被视为嵌套的 if-else 结构。

switch-case-default

switch-case-default 是条件判断结构,语法如下:

  1. switch(expression) {
  2. case expression_1: ...
  3. case expression_2: ...
  4. default: ...
  5. }

与标准 PHP 规范不同的是,在魔方加密的 PHP 规范中,default 子结构必须是最后一个选择条件。

while

while 是循环结构。

do-while

do-while 是循环结构。

for

for 是循环结构,语法如下:

  1. for(expression_1; expression_2; expression_3)
  2. statement;

expression_1、expression_2、expression_3 三个表达式均可省略。

foreach

foreach 是循环结构,用于从头到尾遍历一个数组,语法如下:

  1. foreach(expression as $key => $value) statement;
  2. foreach(expression as $value) statement;
  3. foreach(variable as $key => & $value) statement;
  4. foreach(variable as & $value) statement;

请注意,切勿在 foreach 结构中对循环目标使用 reset()next() 函数,否则可能会出现不可预知的后果。

运算符优先级

运算符 结合性
require require_once include include_once
clone new
[
**
++ — ~ (int) (double) (string) (array) (object) (boolean) @
instanceof
! * / %
+ - .
<< >>
< <= > >=
== != === !==
&
^
&#124;
&&
&#124;&#124;
? :
= += -= = *= /= .= %= &= &#124;= ^= <<= >>= =>
and
xor
or
,

表格由上至下,优先级由高变低。

原文: http://mfenc-manual.mydoc.io/?t=41293