如何使用两个数组分配PHP变量


How to assign PHP-variables by using two arrays

我正在尝试使用一个for循环,它在两个数组中循环。

我的第一个是这样的:

$pos = array("Yada Yada", "Boom Boom");

第二个看起来是这样的:

$pos_var_names = array("yada", "boom");

我的目标是使用for循环来同时自动循环通过两个数组,例如set:

$yada = "Yada Yada";

如何以最有效的方式做到这一点?

很抱歉我遗漏了一些明显的东西。我已经连续编码了几个小时,感觉有点头晕。

致以最良好的问候!

您可以使用for循环:

for ($i = 0; $i < count($pos); $i++)
    ${$pos_var_names[$i]} = $pos[$i]; // variable variables

但它更像这样优雅:

extract(array_combine($pos_var_names, $pos));

这只是生成一个$varname=>$pos数组(另请参阅array_combine的文档,即extract()'ed.


但一般来说,最好只是有一个关联数组,而不是使用大量的变量。它只会用无用的变量填充您的变量范围,这些变量可能与您拥有的其他变量冲突。