因为工作原因,离开C++一段时间了,一直用这个所谓的脚本语言来构建一些CGI应用。在用这个Perl的过程中,发现它其实并不是那么简单的,很庞大的一个语言平台,可以说是SHELL的超级版,也可以是PHP的姊妹版,说不出的感觉,反正也挺实用的。这里记录一些小注意事项,供自己复习,也许能提醒各位有心的朋友。
1、undef, '', 0在逻辑判断式中都是表示FALSE的意思,但你可要注意,你的业务逻辑是这样的吗?比如$ABC= $ABC || 0; $ABC=$ABC||1,通常地||可用于设置默认值,你需要再确认你的代码确是描述这个逻辑吗?我和我的同事可是几次栽在这个地方。比如:如果用户没选择或首次访问表单,该域值为UNDEF,但里面用0表示全部了,如果想当然就||0,那就不对了。
2、CGI模块和查询串的共存问题(估计很少人会犯这个错,即便犯了也很容易发现)。就是你总是需要
先从〈STDIN〉或ENV{'QUERY_STRING'}解析表单参数或URL参数,
然后 初始化CGI(或加载)去读取SESSION内容。
3、在传递多层引用关系时,尽量用临时变量来保存引用,否则可能引用出错。如某函数需要一个引用数组,该数组每个元素是一个数组的引用,子数组的元素又是一个HASH的引用,这时你最好用两个中间标量来简化,否则赋值下来可不容易搞对。
4、当你想实现一些PERL本身无法实现的功能时,比如像C/C++跟系统多一些接触(类似于API功能)时,请想到search.cpan.org,你的同行通常都做好了现成的模块供你调用了.说不出的全.
本文转自 dannyy1026 51CTO博客,原文链接:http://blog.51cto.com/dannyyuan/38696