Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re: Working with child nodes in subroutine (XML::LibXML)

by Eily (Monsignor)
on Nov 04, 2014 at 13:46 UTC ( [id://1106032]=note: print w/replies, xml ) Need Help??


in reply to Working with child nodes in subroutine (XML::LibXML)

What do you know about subroutines? Because it looks like you're asking how to pass any argument to a subroutine, in which case, you may want to read perlsub. Anyway, you declare your subroutine like this:

sub myRepeatedCode { my ($day, $argument2, $argument3) = @_; # Do something with $day }
and you just call like: myRepeatedCode($day, "argument2", 3);

But actually in your case, instead of "if today do something, if tomorrow same thing, if some other day still the same" you could actually write something like "if today, tomorrow or some other day, do something", which avoids the code repetition in the first place. To check that one of several conditions is met, you can put an OR operator between them. Or is often written || in most languages, but in perl in can also be written or.

if ($va eq 'today' || $va eq 'tomorrow' || $va eq 'friday') { DoSomething(); }

The difference between || and or is their precedence, see perlop on that point.

Replies are listed 'Best First'.
Re^2: Working with child nodes in subroutine (XML::LibXML)
by Ockie (Initiate) on Nov 04, 2014 at 15:21 UTC
    d'oh... thanks for the tip... was so focused on needing to reuse the code I didn't stop to think about using the if today || tomorrow option... sigh. I should know better than that.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others admiring the Monastery: (3)
As of 2024-04-25 19:36 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found