Question

Aide Je ne peux pas passer ma clé de hachage au sous-programme brindille.

ici

foreach my $word (sort { $keywords{$a} <=> $keywords{$b} } keys (%keywords)) {
my $t = XML::Twig->new( twig_roots   => { 'Id' => \&insert($keywords{$word}) } );

    $t->parse($docsums);

    sub insert 
    { 
        my($t, $id, $k)= @_;

        my $p =  $id->text;      

        my $query    = "insert into pres (id, wid, p) values(DEFAULT, '$k', '$p')";
        my $sql      = $connect->prepare($query);
        $sql->execute( );   

    }
}

Merci.

Était-ce utile?

La solution

On dirait que vous essayez de curry insert mais Perl ne supporte pas directement que. Au lieu de cela, vous pouvez utiliser un sous-programme anonyme pour construire la liste des arguments approprié pour insert:

'Id' => sub { insert($_[0], $_[1], $keywords{$word}) }
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top