Perl重置变量
问题描述:
我在学习Perl,并且制作了一个脚本,它将在我的脚本的开始部分使用定义的变量来建立连接,拉动记录,修改它们,然后关闭连接。Perl重置变量
我的工作的第二部分涉及重复相同的步骤,但对于不同的服务器。
是否有方法来取消设置之前设置的任何变量?然后使用新定义的设置并重复这些步骤?
谢谢
答
在自己的范围内定义您的变量。
{
my $server = '123.123.123.123';
my $username = 'user1';
ping($server);
login($username);
}
{
my $server = '222.222.123.123';
my $username = 'user2';
ping($server);
login($username);
}
更妙的是,使用函数定义:
sub doSomethingToServer
{
my ($server, $username) = @_;
ping($server);
login($username);
}
doSomethingToServer('123.123.123.123', 'user1');
doSomethingToServer('222.222.123.123', 'user2');
您应该考虑到你是指变量的类型,它是一个数组?或散列?还是标量?通常我用'@array =();'或'%hash =()来重置它;' – 2013-02-26 22:25:57
听起来你想要的是一个带参数的子程序(a.k.a.函数)。 – pamphlet 2013-02-26 22:27:27
我通常只是在开始时声明类型,并按照我的意思分配。只需重新分配它们,但带参数的函数会更好。 – 2013-02-26 22:29:12