[英]multiple Perl ` print $cgi->header, <<HTML; … HTML ` statement gives problem
我有类似的东西:
#!/usr/bin/perl
use strict;
use warnings;
use CGI::Simple;
use DBI;
my $cgi = CGI::Simple->new;
if ($cgi->param('selid'))
{
print $cgi->header, <<HTML;
<br/>this is SELECT
HTML
}
elsif ($cgi->param('delid'))
{
print $cgi->header, <<HTML;
<b>this is DELETE</b>
HTML
}
elsif ($cgi->param('upid'))
{
print $cgi->header, <<HTML;
<b>this is UPDATE</b>
HTML
}
当我运行这个我得到一个错误,如:
错误消息:在C:/xampp/htdocs/perl/action.pl第14行EOF之前的任何位置都找不到字符串终止符“ HTML”。
以及何时在<<
和HTML;
之间<<
空格HTML;
比如: print $cgi->header, << HTML;
错误更改为:
错误消息:在C:/xampp/htdocs/perl/action.pl第14行EOF之前的任何位置都找不到字符串终止符“”,
这是什么原因?
注意:参数是从另一个页面传递的(“ selid”或“ delid”或“ upid”)
必须确保heredocs的结束标记在行的开头,否则解释器将不会识别该标记。 因此,将HTML结尾于该行的开头,在其前面没有空格。
还要记住,在开始标记周围使用双引号(例如,print <<“ HTML”;)可以对变量进行插值,不使用单引号,而不使用标签而使用标记的行为就像双引号一样
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.