You still can't access the outer value without putting the variables in separate packages and declaring the outer one with our. The second inner my declaration "hides" the first outer my declaration. If you want to access two variables with the same name, you have to give them separate packages, even if it all happens in a single .pl file.

Packages aren't necessarily modules. You can have many package declarations in a single file and many files sharing the same package declaration. Packages are just namespaces you can use to group together variables and scope them logically rather than via text position (inside/outside curly braces).

If you really, really don't want to use packages to scope your variables, then you will have to give your inner and outer variables different names. Is there a particular reason you aren't doing that already?


In reply to Re^3: How to access outside variable by ELISHEVA
in thread How to access outside variable by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.