Hallo, hopenlijk kunnen jullie mij verder helpen!

ik heb een logfile die ik wil uitlezen het is plain text
ik heb al een 2 demensionale array gemaakt van het file.
de eerste array bevat alle lines van het file, de 2e bevat alle woorden per line.

hier is een stuk code waar het om gaat: $line is de 2 demensionale array


     <?php
$filename = "logfiles/dg-px01.acl";
 $fh = fopen($filename,"rb");
$num = 0;

while(!feof($fh))
 {
  $line[$num] = fgets($fh);
  if( $line[$num] == null ) break;
  $expl = explode(" ",$line[$num]);
  for($i=0; $i < count($expl); $i++)
   {
    $line[$num] = ($expl);
   }
  $num++; 
  unset($expl);
} 
 for( $i=0; $i < count($line); $i++ )
  {
   for( $j=0; $j < count($line[$i]); $j++)
    {
     echo $line[$i][$j];
    }
   echo "<BR />";
  }

function readacl($aclname, $line ) 
{
 $j = 0; 
 for( $i=0; $i < count($line); $i++ )
 {
  if( in_array ( $aclname, $line[$i] ) )
  {
   $acloutput[$j] = implode(" ", $line[$i]);
   $j++;   
  }
 }
return $acloutput;
}
$test = array(readacl("outbound", $line));
echo $test;
#for( $i=0; $i < count($test); $i++)
#{
# echo $test[$i];
#}
?>


waar het nu fout gaat is dat ik op een of andere manier readacl niet in $test krijg. error die ik krijg:

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /var/www/html/test/readacl.php on line 32

Notice: Undefined variable: acloutput in /var/www/html/test/readacl.php on line 38
Array
Je post is nu niet echt leesbaar. Pas je post even aan en gebruik [ignore]
 en 
[/ignore] tags om je code heen. Om php code zet je uiteraard dit:<?php en ?>Gebruik je knop om dit te doen.

SanThe.

Edit: Dankjewel.

En hoe stop je alles in het array()? Relevante code?
<?php
//ipv de regel 40/ 41 in jou post
$test = readacl("outbound", $line);
echo '<pre>'.$test.'</pre>';
?>
nog steeds dezelfde error,

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /var/www/html/test/readacl.php on line 32

Notice: Undefined variable: acloutput in /var/www/html/test/readacl.php on line 38
SanThe schreef op 16.02.2009 13:04
En hoe stop je alles in het array()? Relevante code?
In het voorbeeld wat je geeft zit geen [php]in_array[/php]. Dit betekend dat de lijn van de error niet overeen komt met de code die je geeft.
Heb je bovenaan ergens misschien ook een [php]include[/php]?
Karl schreef op 16.02.2009 15:04
In het voorbeeld wat je geeft zit geen [php]in_array[/php].

Regel 32?
SanThe schreef op 16.02.2009 15:13
[quote='Karl schreef op 16.02.2009 15:04']In het voorbeeld wat je geeft zit geen [php]in_array[/php].

Regel 32?[/quote]
Ow, daar had ik overheen gekeken. Laat maar. Ik heb niks gezegd.
Karl schreef op 16.02.2009 15:04
In het voorbeeld wat je geeft zit geen [php]in_array[/php]. Dit betekend dat de lijn van de error niet overeen komt met de code die je geeft.
Heb je bovenaan ergens misschien ook een [php]include[/php]?


in lijn 32 is de in_array : if( in_array ( $aclname, $line[$i] ) )
Hans schreef op 16.02.2009 15:29
[quote='Karl schreef op 16.02.2009 15:04']In het voorbeeld wat je geeft zit geen [php]in_array[/php]. Dit betekend dat de lijn van de error niet overeen komt met de code die je geeft.
Heb je bovenaan ergens misschien ook een [php]include[/php]?


in lijn 32 is de in_array : if( in_array ( $aclname, $line[$i] ) )[/quote]
Als SanThe dat al duidelijk heeft gemaakt, hoe jij dat niet nog eens te doen. Lees liever zijn posts eens een keer goed.
sorry hoor, ik had niet gezien dat hij er al op gereageert had, ik had het window nog open staan... ik ben ook maar een mens.

ps. zo stop ik alles in de arrays

<?php
$line[$num] = fgets($fh); // array uit het txtfile
  if( $line[$num] == null ) break; // check of info leeg is
  $expl = explode(" ",$line[$num]); // een explode van alle woorden (nieuwe array)
  for($i=0; $i < count($expl); $i++)
   {
    $line[$num] = ($expl); // aanmaken van de 2e deminsie van de array.
?>

Reageren