好怪的一段语句啊,大家帮忙看看

sha256cn 2002-01-10 02:54:24
sub formatTime
{
($mm < 10) and ($mm = "0$mm");
($dd < 10) and ($dd = "0$dd");
($hour < 10) and ($hour = "0$hour");
($min < 10) and ($min = "0$min");

return "$yyyy-$mm-$dd $hour:$min";
}
形如以上的语句:($mm < 10) and ($mm = "0$mm");有什么意义?和$mm = "0$mm";有什么区别?谢谢了!
...全文
90 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Soft21 2002-01-12
  • 打赏
  • 举报
回复
大家好啊,我嘛,Up!
peifang 2002-01-11
  • 打赏
  • 举报
回复
这个要分情况了。
如果$id or return getDefaultUser();是该子程序的最后一行。
那么等同于
if ($id){ #如果$id是数值则$id不为0,如果$id是字符串,$id不为空。
my $foo = getDefaultUser();
return $foo;
}else{
return $id;
}

否则,等同于
if ($id){ #如果$id是数值则$id不为0,如果$id是字符串,$id不为空。
my $foo = getDefaultUser();
return $foo;
}

# excute other code...
nan1nan1 2002-01-11
  • 打赏
  • 举报
回复
ft.

一个贴子到处都有。。。

上午刚在smth看到,现在。。。嘿嘿……真热闹。
sha256cn 2002-01-11
  • 打赏
  • 举报
回复
明白了,谢谢!
peifang 2002-01-11
  • 打赏
  • 举报
回复
不好意思,一时粗心,逻辑弄反了。

如果$id or return getDefaultUser();是该子程序的最后一行。
if ($id !=0 or $id ne ''){
return $id;
}else{
my $foo = getDefaultUser();
return $foo;
}

如果$id or return getDefaultUser();不是该子程序的最后一行。
if (!$id){
my $foo = getDefaultUser();
return $foo;
}
# excute other code...
okeyes 2002-01-10
  • 打赏
  • 举报
回复
建议你看一下《高级perl编程》,里面对这个讲得很透彻。
peifang 2002-01-10
  • 打赏
  • 举报
回复
省略了if语句。有些老外习惯如此。

($mm < 10) and ($mm = "0$mm");
等同于
if ($mm < 10) $mm = "0$mm";
wind0521 2002-01-10
  • 打赏
  • 举报
回复
对于这段代码我的理解是这样的:
先对月份进行一个判断,如果是小于10月的,就用0X来表示月份,其他与这个类似了,不知道我的理解对吗?我想应该是这样的吧!

2,203

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 CGI
社区管理员
  • CGI社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧