bjoern: Array durchsuchen

Hallo zusammen

ich habe seit längerem ein Problem mit diesem Script:

<?php  
$datei = file("bern.htm");  
$dir = "bergseen/";  
$seenamen = scandir($dir);  
sort($seenamen);  
$anzahl = count($seenamen);  
$menge = count($datei);  
for ($b = 0; $b < $menge; $b++)  
{  
$neudatei = fopen("neunamen.txt", "a");  
fwrite($neudatei,$b);  
fwrite($neudatei,"\n");  
fclose($neudatei);  
}  
$schluessel = file("neunamen.txt");  
$infodatei = array_combine($schluessel,$datei);  
//for ($a = 0; $a < $anzahl; $a++)  
//{  
$suchwort = "<p>Bachsee</p>";  
$suche = array_search('<p>Bergsee</p>',$infodatei);  
echo $suche;  
//if ($suche !='false')  
//{  
$namendatei = fopen("seenamen.txt", "a");  
// array: Koordinaten, Ort, Meter über Meer;  
$koordinaten = $suche+"1";  
//echo $koordinaten;  
$ort = $suche+"4";  
//echo $ort;  
$meter = $suche+"7";  
//echo $meter;  
$info = "$infodatei[$koordinaten]|$infodatei[$ort]|$infodatei[$meter]";  
fwrite($namendatei,$info);  
fclose($namendatei);  
//}  
//}  
?>

Kann mir mal jemand drüberschauen und sagen, was ich falsch mache?

Ausgabe bekomme ich keine!

Danke!

  1. Hallo,

    ich habe seit längerem ein Problem mit diesem Script:

    na super, dann verrate uns bloß nicht, worin das Problem besteht, geschweige denn was das Script eigentlich tun soll.

    <?php

    $datei = file("bern.htm");
    $dir = "bergseen/";
    ...
    [viel unkommentierter Code]
    ...
    ?>

      
    
    > Ausgabe bekomme ich keine!  
      
    Kein Wunder, das Script macht ja auch keine; die echo-Anweisungen sind alle auskommentiert.  
      
    Ciao,  
     Martin  
    
    -- 
    Paradox ist, wenn jemand eingefleischter Vegetarier ist.  
    Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
    
    1. Noch einmal von Vorne!
      Mit diesem Script will ich ein Wort in einer Datei suchen und dann die nächsten paar Zeilen in einer Datei ausgeben.
      In der Datei steht dann aber nur ||

      <?php
      $datei = file("bern.htm");//Elemente(Datei)
      $dir = "bergseen/";
      $seenamen = scandir($dir);
      sort($seenamen);
      $anzahl = count($seenamen);
      $menge = count($datei);
      for ($b = 0; $b < $menge; $b++)//Keys machen
      {
      $neudatei = fopen("neunamen.txt", "a");
      fwrite($neudatei,$b);
      fwrite($neudatei,"\n");
      fclose($neudatei);
      }
      $schluessel = file("neunamen.txt");//Keys in Array einfügen
      $infodatei = array_combine($schluessel,$datei);//Keys mit Elementen zusammensetzen
      $suche = array_search('<p>Bergsee</p>',$infodatei);//Suche
      echo $suche;//Suche ausgeben!!
      $namendatei = fopen("seenamen.txt", "a");//Datei für Infoausgabe
      $koordinaten = $suche+"1";//Infos
      $ort = $suche+"4";//Infos
      $meter = $suche+"7";//Infos
      $info = "$infodatei[$koordinaten]|$infodatei[$ort]|$infodatei[$meter]";
      fwrite($namendatei,$info);
      fclose($namendatei);
      ?>

      1. Noch einmal von Vorne!
        Mit diesem Script will ich ein Wort in einer Datei suchen und dann die nächsten paar Zeilen in einer Datei ausgeben.
        In der Datei steht dann aber nur ||

        <?php  
        $datei = file("bern.htm");//Elemente(Datei)  
        $dir = "bergseen/";  
        $seenamen = scandir($dir);  
        sort($seenamen);  
        $anzahl = count($seenamen);  
        $menge = count($datei);  
        for ($b = 0; $b < $menge; $b++)//Keys machen  
        {  
        $neudatei = fopen("neunamen.txt", "a");  
        fwrite($neudatei,$b);  
        fwrite($neudatei,"\n");  
        fclose($neudatei);  
        }  
        $schluessel = file("neunamen.txt");//Keys in Array einfügen  
        $infodatei = array_combine($schluessel,$datei);//Keys mit Elementen zusammensetzen  
        $suche = array_search('<p>Bergsee</p>',$infodatei);//Suche  
        echo $suche;//Suche ausgeben!!  
        $namendatei = fopen("seenamen.txt", "a");//Datei für Infoausgabe  
        $koordinaten = $suche+"1";//Infos  
        $ort = $suche+"4";//Infos  
        $meter = $suche+"7";//Infos  
        $info = "$infodatei[$koordinaten]|$infodatei[$ort]|$infodatei[$meter]";  
        fwrite($namendatei,$info);  
        fclose($namendatei);  
        ?>
        

        Sorry habe den Code falsch eingegeben

        1. Hi!

          Mit diesem Script will ich ein Wort in einer Datei suchen und dann die nächsten paar Zeilen in einer Datei ausgeben.
          In der Datei steht dann aber nur ||

          Und an welcher Stelle steht in welcher Variable welcher unerwartete Wert - was sollte stattdessen drinstehen? Zum Programmieren gehört auch das Fehlersuchen. Und dazu ist das wichtigste Hilfsmittel die Kontrollausgabe der verarbeiteten und erzeugten Werte. Damit kann man üblicherweise die Fehlerstelle sehr genau eingrenzen. Nimm zur Ausgabe am besten var_dump(), das erzeugt die aussagekräftigsten Ausgaben.

          Außerdem enthält dein Code keinerlei Fehlerbehandlung. Wenn irgendetwas schlief läuft, meldet das die betroffene Funktion über ihren Rückgabewert. Auch wenn du keine Meldungen angezeigt bekommst, können Fehler aufgetreten sein.

          Sorry habe den Code falsch eingegeben

          Wenn er mal nicht syntaktisch ausgezeichnet ist, ist das kein Beinbruch.

          Lo!