如何通过for循环执行此操作?我想根据它们在数组中的存在来设置变量......
if (isset($sort[3])) $c = 3;
if (isset($sort[4])) $d = 4;
if (isset($sort[5])) $e = 5;
if (isset($sort[6])) $f = 6;
if (isset($sort[7])) $g = 7;
if (isset($sort[8])) $h = 8;
if (isset($sort[9])) $i = 9;
if (isset($sort[10])) $j = 10;
if (isset($sort[11])) $k = 11;
if (isset($sort[12])) $l = 12;
if (isset($sort[13])) $m = 13;
if (isset($sort[14])) $n = 14;
if (isset($sort[15])) $o = 15;
答案 0 :(得分:4)
有趣的是,这实际上可以在PHP中完成,因为PHP允许您使用$"$<variable_name>"
表示法在运行时命名变量。
for ($i = 3; $i <= 15; $i++) {
if (isset($sort[$i])) {
$varName = chr(ord ("a") + ($i - 1));
$$varName = $i
}
}
说明:在PHP中,您可以use strings as variable names。要获得正确的字母,首先使用ord计算正确的ASCII值,将其移动$i - 1
,然后使用{{将ASCII值转换为字符串来获取所需的字符3}}
虽然可以在PHP中执行此操作,但我不一定会推荐它。从字母表到适当的值有一个数组/映射会更好。