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

Re: Contain yourselves please: THEORETICAL question about variable values being used as A PART of another variable's name.

by kennethk (Abbot)
on Dec 15, 2016 at 17:46 UTC ( [id://1177866]=note: print w/replies, xml ) Need Help??


in reply to Contain yourselves please: THEORETICAL question about variable values being used as A PART of another variable's name.

The relevant documentation is Symbolic references in perlref. One important thing to understand is that you cannot interact with lexical variables using symbolic references -- one reason your code won't work is because you can't see your set of specific variables. Correcting your example code,
use strict; use warnings; my $var_name_modifier1 = '100'; my $var_name_modifier2 = '200'; our $specific_200_var = "this is from 200\n\n"; our $specific_100_var = "this is from 100\n\n"; print "\n\n\n\n"; print 'this is what we have for 100: '; NO_STRICT_BLOCK: { no strict "refs"; print ${"specific_${var_name_modifier1}_var"}; } print " \n\n";
Note the (likely) unexpected behavior seen for:
use strict; use warnings; our $value = "Valuable information"; print 'this is what we have: '; NO_STRICT_BLOCK: { my $value = 'Ha ha, I changed it!'; no strict "refs"; print ${"value"}; }

#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.

  • Comment on Re: Contain yourselves please: THEORETICAL question about variable values being used as A PART of another variable's name.
  • Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1177866]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (3)
As of 2024-04-19 19:42 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found