Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Executing perl code

by pglenski (Beadle)
on Feb 13, 2013 at 18:16 UTC ( #1018592=perlquestion: print w/ replies, xml ) Need Help??
pglenski has asked for the wisdom of the Perl Monks concerning the following question:

Hello I am using the module Excel::Writer::XLSX written by John McNamara. It work's great. I have written a perl script which reads a cvs file and then creates a spreadsheet. The module has many characters you can set, such as:
$worksheet = $workbook->add_worksheet(); $workbook->set_landscape() $workbook->set_freeze_panes(2,0)
I would like to populate the settings in a flat file such as:

set_landscape()

hide_gridline(), etc

and then have my script read and execute the settings. I know this doesn't work but this is what I want it to do:
while(<IN>) { chomp; $worksheet->$_ }
Is there someway to do what I want?

Comment on Executing perl code
Select or Download Code
Re: Executing perl code
by SuicideJunkie (Priest) on Feb 13, 2013 at 18:53 UTC

    Just make sure nobody types "format c:" into that configuration script!

    A much safer way to go about it is to read the config file and look up the provided command in a hash to make sure it is legit.

    my ($cmd, @params) = split ',', <$inputFileHandle>; if (exists $hashOfAllowedCommands{$cmd}) { $worksheet->$hashOfAllowedCommands{$cmd}->(@params) }else{ print "Invalid command ignored in config file at line $.\n"; }

    If you still want to play with the dynamite then take a look into eval

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://1018592]
Approved by ig
Front-paged by Corion
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (7)
As of 2014-12-20 22:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (99 votes), past polls