在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
这篇博客记录一些我学习perl时的一些笔记,持续更新: 1.perl连接数据库的两种方式
#!/usr/bin/perl use POSIX qw(strftime); use Encode; use URI::Escape; use DBI; my $db = DBI->connect("DBI:mysql:database=mysql;host=localhost", "root", "123456", {'RaiseError' => 1}); $sql="select * from table"; my $rs = $db -> prepare($sql); $rs -> execute; while($row= $rs->fetchrow_hashref()){ $s=$row->{'status'}; } #!/usr/bin/perl use Mysql; use POSIX qw(strftime); use Encode; use URI::Escape; $db=Mysql->connect("localhost","mysql","root","123456") or die("connect fail!!"); $query = "select * from table "; if($result->numrows==0){ sleep(6); next; } while(%row=$result->fetchhash){ $id = $row{"id"}; } 2.perl遍历二维hash 方法一: $hash{“data”}{“data1”} = "二维hash"; foreach my $k (keys %hash) { foreach my $k1 (keys %{$hash{$k}}) { } } 方法二: foreach my $key1 (sort keys %hash) #首先对key1进行排序 { foreach my $key2 (sort {$hash{$key1}->{$b}<=>$hash{$key1}->{a}} keys %{$hash{$key1}}) #对value值按照数字大小进行逆序排序 # foreach my $key2 (sort {$a<=>$b} keys %{$hash{$key1}}) #对key2按照数字大小进行排序 { print $key1."t".$key2."t".$hash{$key1}->{$key2}."n"; } 3.perl读取传进来的文件内容 #!/usr/bin/perl use POSIX qw(strftime); use Encode; use URI::Escape; $file=$ARGV[0];#获取第一个输入数据 open( FH, $file );#打开文件 #open( FH1,">", "data"); 写入文件内容 foreach $line ( <FH> ){ chomp($line);#去除空格 @arr=split(/\t/,$line);#按\t截取 print $arr[0].'\t'.$arr[1]; #print FH1 $arr[0].'\t'.$arr[1]; #写入文件 } close(FH);#关闭文件 #close(FH1);
|
请发表评论