Use a hash dispatch.
my %dispatcher = (
something => \&somethingElse,
default => \&main,
);
my $do = exists $dispatcher{ $q->param('do') }
? $dispatcher{ $q->param('do') }
: $dispatcher{default};
$do->();
On Thu, Nov 09, 2006 at 05:56:3
Sara wrote:
> use strict;
> use warnings;
> use CGI;
>
> my $q = new CGI;
>
> my $do = $q->param('do') || 'main'';
>
> if ($do) {
> &$do;
> }
>
> sub main {
> blah blah
> }
> =
> Trying to call the subroutine main from variable $do but I am gettin' error:
On 11/09/2006 06:56 AM, Sara wrote:
use strict;
use warnings;
use CGI;
my $q = new CGI;
my $do = $q->param('do') || 'main'';
my $do = $q->param('do') || main();
if ($do) {
&$do;
}
sub main {
blah blah
}
=
Trying to call the subroutine main from vari
use strict;
use warnings;
use CGI;
my $q = new CGI;
my $do = $q->param('do') || 'main'';
if ($do) {
&$do;
}
sub main {
blah blah
}
=
Trying to call the subroutine main from variable $do but I am gettin' error:
Can't use string ("main") as a subroutine ref