以下PHP调用的Perl等价物是什么?
$_SERVER["HTTP_HOST"]
$_SERVER["REQUEST_URI"]
非常感谢任何帮助。
答案 0 :(得分:13)
另一种方式,比变量环境,是使用CGI:
use strict;
use warnings;
use CGI ;
print CGI->new->url();
此外,它还提供了很多CGI操作 访问params发送到您的cgi,cookies等...
答案 1 :(得分:6)
环境变量是Web服务器发送给您运行的每个CGI的一系列隐藏值。您的CGI可以解析它们并使用它们发送的数据。环境变量存储在名为%ENV 的哈希中。
例如,$ENV{'HTTP_HOST'}
会提供服务器的主机名。
#!/usr/bin/perl
print "Content-type:text/html\n\n";
print <<EndOfHTML;
<html><head><title>Print Environment</title></head>
<body>
EndOfHTML
foreach my $key (sort(keys %ENV)) {
print "$key = $ENV{$key}<br>\n";
}
print "</body></html>";
有关详细信息,请参阅 CGI Environmental variables
答案 2 :(得分:5)
或者你可以这样做并使用变量$ page_url。
my $page_url = 'http';
$page_url.='s' if $ENV{HTTPS};
$page_url.='://';
if($ENV{SERVER_PORT}!=80)
{
$page_url.="$ENV{SERVER_NAME}:$ENV{SERVER_PORT}$ENV{REQUEST_URI}";
}
else
{
$page_url.=$ENV{SERVER_NAME}.$ENV{REQUEST_URI};
}
答案 3 :(得分:2)
你在做什么环境?如果是CGI脚本,请尝试:
use Data::Dumper;
print Dumper \%ENV;