阅读Perl CGI param(输入)

时间:2014-12-02 18:36:19

标签: perl cgi

我试图拆分输入到使用CGI.pm制作的网页形式的$ string

分割是在'>'并且我使用shift从命令行工作以将文件放入脚本但是使用webform不起作用 - 即我没有输出。这可以从命令行使用shift来获取文件中的读取,如下所示:

my $inFile = shift; 
open (IN, "$inFile");
$/ = ">";
while ( my $record = <IN> ) {
chomp $record; 
my ($defLine, @seqLines) = split /\n/, $record;
my $sequence = join('',@seqLines); 

然而,在cgi脚本中使用下面的代码不起作用 - 我猜cgi脚本是强制$ string?但我不确定如何继续

use CGI qw(:cgi-lib :standard);
print "Content-type: text/html\n\n";
my $seq = param('sequence');
$/ = ">";
chomp $seq; 
my ($defLine, @seqLines) = split /\n/, $seq;

任何建议,非常感谢

1 个答案:

答案 0 :(得分:2)

您对文件的所作所为:

local $/ = ">";
while (my $record = <IN>) {
   chomp($record);
   my ($defLine, @seqLines) = split /\n/, $record;
   my $sequence = join('',@seqLines); 
   ...
}

字符串的等价物:

for my $record (split />/, $sequence) {
   my ($defLine, @seqLines) = split /\n/, $record;
   my $sequence = join('',@seqLines); 
   ...
}