Page 1 of 1

(solved) Trying to print the contents of 2 arrays in a loop.

Posted: Fri Jul 31, 2009 11:32 am
by warriorforgod
I am having trouble printing the contents of two arrays in a loop. Basically I want the first entry of $serverarray to print, then the first entry of $filearray to be evaluated and the image to be printed, and then continue like this until finished. Here is the code, and thanks for any help in a dvance.

Code: Select all

 
<?php
        $filestring = file_get_contents('./test.out');
        $filearray = explode("\n", $filestring);
        $serverarray = array("Oma01padeweb01","Oma01padeweb02","Oma01padeweb03","Oma01padeweb04","Oma01padeweb06","Oma01padeweb07","Oma01padeweb08","Oma01pad                              eweb09","Oma01padeweb10","Oma11adeweb21","Oma11adeweb22","Oma11adeweb23","Oma11adeweb24","Oma11adeweb25","Oma11adeweb26","Sat01                              padeweb51","Sat01padeweb52","Sat01padeweb53","Sat01padeweb54","Sat01padeweb55","Sat01padeweb56","Den01padeweb71","Den01padeweb72","Den01padeweb73","Den01padeweb74","Den01padeweb75","Den01padeweb76","Den01padeweb77","Den01padeweb78");
        reset($serverarray);
        reset($filearray);
        while (list($var, $val) = each($filearray)) {
                $bar = each($serverarray);
                print_r($bar);
                ++$var;
                $val = trim($val);
                                if(strlen(strstr($val,'UP'))>0) {
                                echo "<img src=' ./images/green.jpg' width='10' height='10'<br>";
                                }
                                else{
                                echo "<img src='./images/red.jpg' width='10 height='10'<br>";
                                }
                        }
 
?>
 
 

Re: Trying to print the contents of 2 arrays in a loop.

Posted: Fri Jul 31, 2009 12:28 pm
by ronnietherocket
First, what is the problem that you are having?
Second, if you try and print each of the two array individually, are they working properly?
Third, if the answer to the second question is yes, then it should be a simple matter to print out the ith element of the first array and then the ith element of the second array.

Re: Trying to print the contents of 2 arrays in a loop.

Posted: Fri Jul 31, 2009 12:37 pm
by warriorforgod
As it stands right now my output is as follows. I want it to only print the servername(IE Oma01padeweb01)

Code: Select all

 
Array ( [1] => Oma01padeweb01 [value] => Oma01padeweb01 [0] => 0 [key] => 0 )
Array ( [1] => Oma01padeweb02 [value] => Oma01padeweb02 [0] => 1 [key] => 1 )
Array ( [1] => Oma01padeweb03 [value] => Oma01padeweb03 [0] => 2 [key] => 2 )
Array ( [1] => Oma01padeweb04 [value] => Oma01padeweb04 [0] => 3 [key] => 3 )
Array ( [1] => Oma01padeweb06 [value] => Oma01padeweb06 [0] => 4 [key] => 4 )
Array ( [1] => Oma01padeweb07 [value] => Oma01padeweb07 [0] => 5 [key] => 5 )
Array ( [1] => Oma01padeweb08 [value] => Oma01padeweb08 [0] => 6 [key] => 6 )
Array ( [1] => Oma01pad eweb09 [value] => Oma01pad eweb09 [0] => 7 [key] => 7 )
Array ( [1] => Oma01padeweb10 [value] => Oma01padeweb10 [0] => 8 [key] => 8 )
Array ( [1] => Oma11adeweb21 [value] => Oma11adeweb21 [0] => 9 [key] => 9 )
Array ( [1] => Oma11adeweb22 [value] => Oma11adeweb22 [0] => 10 [key] => 10 )
Array ( [1] => Oma11adeweb23 [value] => Oma11adeweb23 [0] => 11 [key] => 11 )
Array ( [1] => Oma11adeweb24 [value] => Oma11adeweb24 [0] => 12 [key] => 12 )
Array ( [1] => Oma11adeweb25 [value] => Oma11adeweb25 [0] => 13 [key] => 13 )
Array ( [1] => Oma11adeweb26 [value] => Oma11adeweb26 [0] => 14 [key] => 14 )
Array ( [1] => Sat01 padeweb51 [value] => Sat01 padeweb51 [0] => 15 [key] => 15 )
Array ( [1] => Sat01padeweb52 [value] => Sat01padeweb52 [0] => 16 [key] => 16 )
Array ( [1] => Sat01padeweb53 [value] => Sat01padeweb53 [0] => 17 [key] => 17 )
Array ( [1] => Sat01padeweb54 [value] => Sat01padeweb54 [0] => 18 [key] => 18 )
Array ( [1] => Sat01padeweb55 [value] => Sat01padeweb55 [0] => 19 [key] => 19 )
Array ( [1] => Sat01padeweb56 [value] => Sat01padeweb56 [0] => 20 [key] => 20 )
Array ( [1] => Den01padeweb71 [value] => Den01padeweb71 [0] => 21 [key] => 21 )
Array ( [1] => Den01padeweb72 [value] => Den01padeweb72 [0] => 22 [key] => 22 )
Array ( [1] => Den01padeweb73 [value] => Den01padeweb73 [0] => 23 [key] => 23 )
Array ( [1] => Den01padeweb74 [value] => Den01padeweb74 [0] => 24 [key] => 24 )
Array ( [1] => Den01padeweb75 [value] => Den01padeweb75 [0] => 25 [key] => 25 )
Array ( [1] => Den01padeweb76 [value] => Den01padeweb76 [0] => 26 [key] => 26 )
Array ( [1] => Den01padeweb77 [value] => Den01padeweb77 [0] => 27 [key] => 27 ) 
 

Re: Trying to print the contents of 2 arrays in a loop.

Posted: Fri Jul 31, 2009 1:30 pm
by warriorforgod
Found the following code that works correctly.

Code: Select all

 
<?php
        $filestring = file_get_contents('./test.out');
        $filearray = explode("\n", $filestring);
        $serverarray = array("Oma01padeweb01","Oma01padeweb02","Oma01padeweb03","Oma01padeweb04","Oma01padeweb06","Oma01padeweb07","Oma01padeweb08","Oma11adeweb21","Oma11adeweb22","Oma11adeweb23","Oma11adeweb24","Oma11adeweb25","Oma11adeweb26","Sat01padeweb51","Sat01padeweb52","Sat01padeweb53","Sat01padeweb54","Sat01padeweb55","Sat01padeweb56","Den01padeweb71","Den01padeweb72","Den01padeweb73","Den01padeweb74","Den01padeweb75","Den01padeweb76","Den01padeweb77","Den01padeweb78");
        while (list($var, $val) = each($filearray)) {
                $val = trim($val);
                                if(strlen(strstr($val,'UP'))>0) {
                                echo $serverarray[$var];
                                echo "<img src=' ./images/green.jpg' width='10' height='10'<br>";
                                ++$var;
                                }   
                                else if(strlen(strstr($val,'DOWN'))>0){
                                echo $serverarray[$var];
                                ++$var;
                                echo "<img src='./images/red.jpg' width='10 height='10'<br>";
                                }
                        }
 
?>