【发布时间】:2011-03-25 15:30:36
【问题描述】:
以下 PHP 调用的 Perl 等效项是什么?
$_SERVER["HTTP_HOST"]
$_SERVER["REQUEST_URI"]
任何帮助将不胜感激。
【问题讨论】:
以下 PHP 调用的 Perl 等效项是什么?
$_SERVER["HTTP_HOST"]
$_SERVER["REQUEST_URI"]
任何帮助将不胜感激。
【问题讨论】:
除了可变环境之外,另一种方法是使用 CGI:
use strict;
use warnings;
use CGI ;
print CGI->new->url();
此外,它还提供了大量的 CGI 操作,例如 当访问参数发送到您的 cgi、cookie 等...
【讨论】:
环境变量是网络服务器发送给您运行的每个 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>";
【讨论】:
或者您可以这样做并使用变量 $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};
}
【讨论】:
您工作的环境是什么?如果是 CGI 脚本试试:
use Data::Dumper;
print Dumper \%ENV;
【讨论】: