PHP Function call_user_func for PERLTesten.pmpackage Testen; use strict; use warnings; sub new() { my ($class) = shift; my $self = { }; $self->{user_function} = undef; bless ($self, $class); return ($self); } sub call_user_function { my ($self) = @_; my $functionname = $self->{user_function}; my $functionnameasref = \&$functionname; &$functionnameasref("Called from PM $functionname.\n"); } sub do_something { my ($self) = @_; if (defined($self->{user_function})) { $self->call_user_function(); } else { print "no user function - do something else\n" }; } 1; test.pl use strict; use warnings; require "Testen.pm"; package Testen; my $share = new Testen(); sub newfunction($) # my user function { my $text = shift; die if !defined($text); print "newfunction from PL -> $text\n"; } $share->do_something; # do nothing - no function set $share->{user_function} = "newfunction"; # set name of function $share->do_something; # do something # bla bla bla # do something exit; OUTPUT, so wie erwartet - test.pl: no user function - do something else newfunction from PL -> Called from PM newfunction. Vielen Dank noch mal an Herrn Schmalhofer. |
Wir sind seit 2001 für unsere Kunden hauptsächlich KMU in den Bereichen Windows Server, Exchange Server Migrationen tätig. Seit 2008 liegt einer unserer weiteren Schwerpunkte auf Security Lösungen insbesondere im Anti-Malware Umfeld.
Yuhuu
Posts mit dem Label Perl werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Perl werden angezeigt. Alle Posts anzeigen