-1

如何通过 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; 
4

1 回答 1

4

有趣的是,这实际上可以在 PHP 中完成,因为 PHP 允许您在运行时使用$"$<variable_name>"符号来命名变量。

for ($i = 3; $i <= 15; $i++) {
    if (isset($sort[$i])) {
        $varName = chr(ord ("a") + ($i - 1));
        $$varName = $i
    }
}

说明:在 PHP 中,您可以使用字符串作为变量名。要获得正确的字母,首先使用ord计算正确的 ASCII 值,将其移动$i - 1,然后通过使用chr将 ASCII 值转换为字符串来获取所需的字符。

虽然您可以在 PHP 中执行此操作,但我不一定会推荐它。最好有一个从字母表到适当值的数组/映射。

于 2013-08-31T20:29:17.400 回答