要检查请求参数是否具有值(http://example.com?my_param=value),可以使用
query->param('my_param')
如果使用no_value形式,这似乎很不稳定:http://example.com?my_param。
有没有一种方法可以简单地检查CGI.pm中参数的存在?
这似乎取决于浏览器的实现。根据this Perlmonks thread from 2001,可能不会返回空参数。但是,如果它们存在,则密钥将在那里,但包含一个空字符串q{}
。如果不存在该参数,则为undef
,因此可以使用defined
进行检查。