楼主
打平表达式、控制流为goto和if
你将在代码中看不到任何高级控制流结构。也看不到任何写在一行的表达式。
编译器地址:https://www.altzin.com/goto.php
示例代码:
<?php
$count = 8;
$array = range(0, $count - 1, 1);
shuffle($array);
$c = count($array);
$g = [[[], $array]];
function rmkey(&$array, $key) {
unset($array[$key]);
$temp = [];
$__fe_0_arr = ($array);
reset($__fe_0_arr);
__L_fe_check_0:
$__fe_0_key = key($__fe_0_arr);
if ($__fe_0_key === null) goto __L_fe_end_2;
$__fe_0_val = current($__fe_0_arr);
$value = $__fe_0_val;
$temp[] = $value;
__L_fe_next_1:
next($__fe_0_arr);
goto __L_fe_check_0;
__L_fe_end_2:
$array = [];
$array = $temp;
}
$a = 0;
__L_for_check_3:
if (!($a < $c)) goto __L_for_end_5;
$temp = [];
$b = 0;
__L_for_check_6:
if (!($b < count($g))) goto __L_for_end_8;
$k = $g[$b];
$d = 0;
__L_for_check_9:
if (!($d < count($k[1]))) goto __L_for_end_11;
$rr = $k[0];
$pp = $k[1];
$rr[] = $k[1][$d];
rmkey($pp, $d);
$temp[] = [$rr, $pp];
__L_for_inc_10:
$d++;
goto __L_for_check_9;
__L_for_end_11:
__L_for_inc_7:
$b++;
goto __L_for_check_6;
__L_for_end_8:
$g = $temp;
__L_for_inc_4:
$a++;
goto __L_for_check_3;
__L_for_end_5:
$t = 0;
__L_for_check_12:
if (!($t < count($g))) goto __L_for_end_14;
$che = 0;
$i = 0;
__L_for_check_15:
if (!($i < ($c - 1))) goto __L_for_end_17;
$__if_19_done = 0;
if ($g[$t][0][$i] > $g[$t][0][$i + 1]) {
$che = 1;
$__if_19_done = 1;
}
if ($__if_19_done !== 0) goto __L_if_end_18;
__L_if_end_18:
__L_for_inc_16:
$i++;
goto __L_for_check_15;
__L_for_end_17:
$__if_21_done = 0;
if ($che == 0) {
$array = $g[$t][0];
goto __L_for_end_14;
$__if_21_done = 1;
}
if ($__if_21_done !== 0) goto __L_if_end_20;
__L_if_end_20:
__L_for_inc_13:
$t++;
goto __L_for_check_12;
__L_for_end_14:
print_r($array);