自动将数组中的每个元素分配给变量

时间:2013-06-10 21:39:30

标签: perl

我有一个数组,我在进行数据库查询后自动填充。

所以我有例如@array,其长度将根据数据库查询的结果而变化。我想将数组的每个元素分配给另一个变量。

例如:

my $length = @array;

如果长度等于3,则应自动创建3个变量,并按此顺序为数组元素分配。

$var1 = $array[0];
$var2 = $array[1];
$var3 = $array[2];

1 个答案:

答案 0 :(得分:4)

  

如果长度等于3,则应自动创建3个变量,并按此顺序为其分配数组元素。

不,绝对不应该以这种方式创建变量。

Why it's stupid to "use a variable as a variable name"


关于通讯失败的可能性,也许您正在寻找以下内容:

my ($id, $name, $address, $phone) = @$row;

如果@$row包含的字段太少,则后面的变量将为undef。