1.软文推荐

2.软文推荐

3.软文推荐

Perl,一种功能丰富的计算机程序语言,运行在超过100种计算机平台上,适用广泛,从大型机到便携设备,从快速原型创建到大规模可扩展开发。

Perl 语言的应用范围很广,除CGI以外,Perl被用于图形编程、系统管理、网络编程、金融、生物以及其他领域。由于其灵活性,Perl被称为脚本语言中的瑞士军刀。

利用注释调试:使用 Smart::Comments 模块

调试 Perl 脚本有两种方式:一种是使用 Perl 的内置调试器,另一种是在脚本中嵌入 print 语句。如果是第二种,大概就会了解到,像那样手工调试的最大问题是:一旦移除了 bug,就得也同时通篇移除调试语句。但是如果能将这些语句安全地留在代码里不是更好吗?毕竟很可能再此需要他们,特别是当又有 bug 出现的时候。

现在,在 Perl 里有这样一个模块:它可以利用注释来开启调试语句,这就是 Smart::Comments 模块。下面是最简单的示例,当使用 Smart::Comments 时,任何由三个或更多个 # 开头的注释就会变成调试语句,并会把注释的所有内容送到屏幕:

#!/usr/bin/perl
use Smart::Comments;

my @ipaddr = split /./, "10.109.32.151";

### @ipaddr;

当执行这段代码后,Smart::Comments 会找到三个一组的 # 注释,并打印出它们所包含的所有内容:

### @ipaddr: [
###            '10',
###            '109',
###            '32',
###            '151'
###          ]

Smart::Comments 的用法不只限于打印变量值,它甚至可以在代码的循环部分用进度条的形式动态现实,更加详细的描述,请参考 perldoc 文档。

一次读入整个文件的技巧

我想你一定知道 Perl 中的钻石操作符()。所以如果想把文件一次性读入是,应该首先修改 $/ 变量:

open CONF, ", $file;
my $text = do { local $/;  };

模块 File::Slurp 中有关于文件操作的更多方式。

封装 SQL 语句:不要直接在代码中使用 SQL 语句

对于向数据库中插入数据的操作,可以使用下面代码来实现 SQL 语句:

sub insert {
   my ($table$data) = @_;

   my $sql = "insert into `$table` ";

   my $insert_fields = join ", ", map { "`$_`" } keys   %$data;
   my $insert_values = join ", ", map { "'$_'" } values %$data;

   $sql .= join " ""("$insert_fields") ";
   $sql .= join " ""values ""("$insert_values")";

   # open a database and return $dbh
   my $sth = $dbh->prepare($sql);
   $sth->execute() or die;

   $sth->finish();
}

调用时只需要依据表名和哈希数据即可:

my %data = (
       name    => "Alice",
       age     => "23",
       country => "U.S.",
);
insert "student", %data;
利用列表赋值交换两个变量的值

我们知道一般情况下如果需要交换两个变量的值,那么需要使用一个临时变量才能完成,但是在 perl 中,可以这么做:

my ($foo$bar) = ("foo""bar");
($foo$bar) = ($bar$foo);

本文来源:www.lxlinux.net/7454.html,若引用不当,请联系修改。

相关文章 8

1

新点云主机(香港云主机) 3分钟前

目录:...

2

Linux重定向和管道对大文件那个效率更高? 6分钟前

大家先看一下二个命令,假如huge_dump.sql文件很大,然后猜测一下哪种导入方式效率会更高一些? #命令1,管道导入 shell>cathuge_dump.sql|mysql-ur...

3

使用组播 DNS在局域网中发现系统 7分钟前

组播 DNS ( mDNS )同样是工作在 IP 层面,它使用5353端口,由于它只是 DNS 的延伸,所以这也决定了它用起来和 DNS 基本相同。不同点是它不请...

4

注销网站备案号(公司网站备案注销) 9分钟前

目录:1、域名备案怎么注销2、网站备案号自己可以取消吗?3、网站备案注销流程4、icp备案怎么注销5、域名怎么注销备案域名备案怎么注销...

5

Linux安装rz、sz命令 10分钟前

Linux如何安装rz、sz命令?Linux中rz命令和sz命令都可用于文件传输,而rz命令主要用于文件的上传,本篇文章为大家分享一下Linux安装rz、sz命令...

6

360优化大师停止更新(360优化大师停止更新怎么办) 13分钟前

目录:1、任务管理器、360、优化大师集体挂掉了,请求解决办法2、优化大师流氓软件清除大师升级中止3、Windows优化大师(专业版)为什么更...

7

Linux系统如何显示和修改主机名 16分钟前

每一个人都有一个名字,同样计算机也有自己的命令,那就是hostname,hostname是用来显示系统的DNS名字以及为了显示和设置它的主机名或者...