Perl 스크립트에서 'fetchrow_arrayref'를 사용하지 못했습니다. 누가 스크립트에서 잘못 될 지 지적 해 줄 수 있습니까? 니가 나에게 알릴 수있는 것이 무엇이든지 고맙겠습니다. 고맙습니다.펄 스크립트에서 fetchrow_arrayref를 올바르게 사용하는 방법은 무엇입니까?
제가 직면 한 문제는 다음과 같습니다.
(1) print $ id; <-이 것은 $ id의 내용을 인쇄하지 않습니다.
(2) print "$ list [1]"; <-이 명령은 실제 내용 대신 ARRAY (0x8da6978)를 인쇄합니다.
(3) reverse (@list); <- 이것은 @list의 내용을 바꾸지 않습니다.
(4) "@ {$ _} \ n"; < - "\ n"이 작동하지 않습니다. 또한 @ {}이 필요한 이유는 무엇입니까?
(5) print "\ n"; <-이 방법도 효과가 없습니다.
(6) print "@list"; < -이 명령은 ARRAY (0x8da6978)를 인쇄합니다.
(7) print Dumper (@inverse); < -prints는 괜찮지 만 배열의 내용은 바뀌지 않습니다.
#!/usr/bin/perl
use strict;
use warnings;
use DBI;
use Data::Dumper;
....
my $dbh = DBI->connect($dbname, $dbuser, $dbpassword) || die "Error $DBI::errstr";
my $sth = $dbh->prepare("SELECT * FROM name WHERE id = 11");
$sth->execute;
my @list =();
while(my $element = $sth->fetchrow_arrayref){
push(@list, $element);
}
$sth->finish;
$dbh->disconnect;
my ($id, $name, $email, $telephone) = @list;
print "Content-Type: text/html; charset=UTF-8\n\n";
print $id; (problem 1)
print "$list[1]"; (problem 2)
my @inverse = reverse(@list); (problem 3)
foreach (@inverse){
print "@{$_} \n"; (problem 4)
}
print "\n"; (problem 5)
print "@list"; (problem 6)
print Dumper(@inverse); (problem 7)
exit;
무슨 뜻인지 이해해야한다.'$ list [1]'은'$ list -> [1]'을 참조하는'ARRAY (0x8da6978)'을 출력한다. 배열을 중재하는 방법을 이해하려고 노력하십시오. – run
dumper 값을 제공하면 누구든지이 포럼에서 도움을 줄 수 있습니다 .. – run
위 스크립트의 덤퍼 값은 다음과 같습니다. ARRAY (0x9e387a0) 11 [email protected] 03-5725-8830 ARRAY (0x9e387a0) $ VAR1 = [ '11', 'Name', '[email protected]', '03 -5725-8830 ']; 인쇄 "/ n"이 전혀 작동하지 않습니다. –