【问题标题】:How to check if a form variable is equal to something in Perl?如何检查表单变量是否等于 Perl 中的某个值?
【发布时间】:2011-09-11 21:54:22
【问题描述】:

我是 perl 新手,过去我主要使用 php,

通常检查 get 变量是否等于某个值,如果是,则执行其他操作,我只是这样做

if ($_GET['page'] == 'news') { 
echo 'yessss';
}

但我不确定如何处理 perl :$ 有人可以帮我吗? :)

谢谢!

【问题讨论】:

  • 在 Perl 中比较字符串的操作符是 eq - 尝试用它来代替 ==(用于数字):)
  • 您需要更具体地了解您使用的 Perl Web 框架。没有 Perl 对 GET 变量的内置访问,答案将取决于框架/模块。 CGI.pm 及其派生词由下面的 SHiNKiROU 回答。 Embperl 将是 if ($fdat{page} eq 'news') {}Catalyst 类似于 CGI.pm ($c->req->param('page'))
  • 回声?你真的打算用 php 标记这个吗?

标签: perl forms get


【解决方案1】:

在Perl中,存在CGI的模块, http://perldoc.perl.org/CGI.html#SYNOPSIS 并且->param 得到一个输入参数。

use CGI;
my $q = CGI->new;
print $q->header();
if ($q->param('page') eq 'news') {
  print "...";
}

【讨论】:

    【解决方案2】:

    在 perl 中,您有不同的运算符来检查字符串与整数是否相等 如果左参数在数值上等于右参数,则 "==" 返回 true。 如果左参数按字符串方式等于右参数,则 "eq" 返回 true。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-17
      • 1970-01-01
      • 2021-03-28
      • 1970-01-01
      • 2011-11-20
      • 1970-01-01
      • 2022-11-29
      相关资源
      最近更新 更多