加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何为Perl变量设置默认值?

发布时间:2020-12-15 21:13:10 所属栏目:大数据 来源:网络整理
导读:我对Perl完全陌生.我需要使用外部模块HTTP :: BrowserDetect.我正在测试一些代码,并尝试从os_string方法获取操作系统的名称.所以,我简单地初始化了对象并创建了一个变量来存储返回的值. my $ua = HTTP::BrowserDetect-new($user_agent);my $os_name = $ua-os
我对Perl完全陌生.我需要使用外部模块HTTP :: BrowserDetect.我正在测试一些代码,并尝试从os_string方法获取操作系统的名称.所以,我简单地初始化了对象并创建了一个变量来存储返回的值.
my $ua = HTTP::BrowserDetect->new($user_agent);
my $os_name = $ua->os_string();

print "$user_agent $os_namen";

有一些用户代理不是浏览器用户代理,所以它们不会从os_string获取任何值.我收到错误在连接(.)或字符串中使用未初始化的值$os_name

当$os_name未初始化时,如何处理这种情况,因为方法os_string返回undef(这是我从阅读模块的源代码发生的).我想应该有办法给出一个默认的字符串,例如在这些情况下没有操作系统.

解决方法

my $os_name = $ua->os_string() || 'No OS';

如果$ua-> os_string()是伪造的(即:undef,zero或空字符串),则||的第二部分表达式将被评估(并将是表达式的值).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读