Perl输出函数传递的二维数组
最近用DBI模块写个了mysql接入函数,但得到的return一直不能输出结果,后来经过思考,原来是二维数组传递的问题,终于解决了,特此为记。
下面这个是mysql接入函数:
1234567891011121314151617 |
sub mysql_connect(){ use DBI;my ($sql,$db)=@_;my $usr="selectonly";my $passwd="yuyin_110";my $dbh=DBI->connect("DBI:mysql:$db",$usr,$passwd);if(!$dbh){print "connect lost\n";}else{my $sth=$dbh->prepare($sql)or die "Can’t prepare $sql: $dbh->errstr\n";$sth->execute()or die "Can’t execute the query: $sth->errstr";my $data=$sth->fetchall_arrayref();$sth->finish;return $data;}} |
现在的问题是输出$data的内容,而$data返回的是一个二维数组的引用地址,可以用以下方法分层输出这个数组:
1234567891011 |
my $sql="select * from test limit 1000";my $b=mysql_connect($sql,"test");my @r=@$b; #####因为$b获得的只是一个引用地址,可以用@变成数组,这个数组这储存了一系列一维数组地址foreach(@r){my @each=@$_; ######道理与获得二维地址一样foreach(@each){print $_."\t";}print "\n";} |
相关推荐:
- 吃豆腐新解 438
- 怎样向NCBI提交基因序列 437
- Perl输出函数传递的二维数组 421
- centOS7 安装mysql5.6 389
- CentOS7建立FTP站点 386
最新创建圈子
-
原料药研发及国内外注册申报
2019-01-25 10:41圈主:caolianhui 帖子:33 -
制药工程交流
2019-01-25 10:40圈主:polysciences 帖子:30 -
健康管理
2019-01-25 10:40圈主:neuromics 帖子:20 -
发酵技术
2019-01-25 10:39圈主:fitzgerald 帖子:17 -
医学肿瘤学临床试验
2019-01-25 10:39圈主:bma 帖子:58