如何在数组中使用if else

时间:2015-08-11 10:00:54

标签: perl perl-module mod-perl

我想在数组中使用if else条件。传递数组元素时,我得到错误的数据。

这是我的代码

print "Enter Item u want: ";

$i=<>;

@array=("coffee","tea","buttermilk");

%hash = map{ $_ =>1 }@array;

if(exists($para{$i})){

    print "available \n";

}

else{

    print "Not available \n";

}

即使我传递数组项目我也无法获得消息

2 个答案:

答案 0 :(得分:2)

您从<>读取的值将包含换行符。散列中的所有键都不包含换行符。因此,您的哈希值中永远不会找到$i

您想要使用$ichomp()删除换行符。

chomp($i = <>);

答案 1 :(得分:0)

首先构建哈希对我来说似乎很复杂,为什么不使用 grep

Object