in reply to Problem Searching an array for a string... Please Help!
Ok I'm confused by something here...
&Search_Buff($decide == "1")
You are using a conditional statement as an argument to the &SearchBuff subroutine. But it appears that $decide which you are testing in the conditional is defined in &Search_Buff. This will not work because the conditional is being evaluated before the subroutine is executed. It looks like you want &Search_Buff to return a boolean value, and then test that. try something like this:
if (&Search_Buff()){ &Site_Up; } else { &Site_Down; } # Sub to search gethttpbuff.txt for a string & return 0 or 1 sub Search_Buff { # Open hethttpbuff.txt file, create an array with the data & close +file. End if file is locked. open (gethttpbuff, "gethttpbuff.txt") || die("Could not open file!" +); @array = <gethttpbuff>; close(gethttpbuff) # If search string is found make var equal to "1". If the search st +ring is not found make var equal to "0" foreach $line (@array) { if ($line =~ /$search/) { return 1; } } return undef; # or return 0; }
Update: Found a logicall flaw in my code. Correcting it.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Problem Searching an array for a string... Please Help!
by dragonchild (Archbishop) on Feb 24, 2005 at 17:08 UTC |