Namensräume und HTML::Parser
Margin-Auto
- perl
0 Struppi
Hi,
in meinem Skript binde ich zwei Module ein:
use Sonstiges;
use myHTMLParser;
In myHTMLParser wird - wie sollte es anders sein - HTML::Parser verwendet:
sub proceedHtml{
my $html=shift;
{
package MyParser;
use base 'HTML::Parser';
sub start{
#....
}
sub end {
#....
}
sub text {
#....
}
}
my $p = MyParser->new();
$p->parse($html);
return $Main::newhtml;
}
Innerhalb der Subs start, end und text werden jetzt einige Sachen mit dem HTML gemacht.
So weit so gut. Ich möchte jetzt aber in der Sub Start eine Sub aus dem anderen Modul (Sonstiges.pm) aufrufen. Bisherige Versuche mit &Main::sonstsub(), &Main::Sonstiges::sonstsub() blieben erfolglos, es kommt jedes Mal die Fehlermeldung "Undefined subroutine called."
Wie müsste der korrekte Aufruf der Sub in dem anderen Modul lauten?
TIA
Margin-Auto
So weit so gut. Ich möchte jetzt aber in der Sub Start eine Sub aus dem anderen Modul (Sonstiges.pm) aufrufen. Bisherige Versuche mit &Main::sonstsub(), &Main::Sonstiges::sonstsub() blieben erfolglos, es kommt jedes Mal die Fehlermeldung "Undefined subroutine called."
es muss main::sub() heißen.
Struppi.
Hi,
es muss main::sub() heißen.
Danke, das wars.
Ja, ich weiss: das Universum ist case-sensitiv....
Margin-Auto