Id like to delete a hash key/value pair from a hash within the subroutine, but have it not deleted globally. Whatever combination I try, it always seems to delete the key/value globally. Any suggestions?

Where do you get these ideas (what docs/tutorial are you reading)?

Here's an example

my %hash = ( 1 .. 4); my $foo = \%hash; my $bar = \%hash; my $baz = $foo ; foobarbaz(\%hash); sub foobarbaz { my $ref = shift; }
Many names (references) for it ($foo,$bar,$baz) but just one %hash, it doesn't matter where you modify it (even inside sub foobarbaz).

I suggest you switch to a book like Beginning Perl by Simon Cozens, Peter Wainwright.
Beginning Perl is a different kind of Perl book. It's written particularly with the beginning programmer in mind, but it doesn't treat you like an idiot, and experienced programmers will not feel patronised. It covers a lot of ground, from the very basics of programming, right through to developing CGI applications for the web. More importantly, it emphasises good Perl practice, and readable and maintainable code.


In reply to Re: delete hash key/value in subroutine by Anonymous Monk
in thread delete hash key/value in subroutine by coldy

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.