Ich möchte in Perl, so etwas tun:Wie kann ich ein Modul in Perl bedingt verwenden?
$Module1="ReportHashFile1"; # ReportHashFile1.pm
$Module2="ReportHashFile2"; # ReportHashFile2.pm
if(Condition1)
{
use $Module1;
}
elsif(Condition2)
{
use $Module2;
}
ReportHashFile * .pm enthält ein Paket ReportHashFile *.
Auch, wie man ein Array innerhalb des Moduls referenziert, das auf dynamischem Modulnamen basiert?
@Array= @$Module1::Array_inside_module;
Gibt es trotzdem kann ich das erreichen. Eine Art Compiler-Direktive?
+1 für die Adressierung "Wie rufe ich eine Methode mit dem gleichen Namen von dem Modul auf, das ich geladen habe" :) – DVK
Ich werfe normalerweise ein Eval ein, falls Sie das Modul nicht laden können. Ich mag es, die Dinge gut zu machen, anstatt diesen schrecklichen Müll von @INC zu sehen, den Perl ausspuckt. :) –