Foreach Schleife und Datei erstellen = Fehler ?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Foreach Schleife und Datei erstellen = Fehler ?

    Hi, folgendes Problem, ich versuche automatisch immer eine Datei zu erstellen, nur schafft es die schleife immer nur den letzten Wert des Arrays zu kopieren, Und als Fehlermeldung kommt folgendes immer ...

    Warning: copy(..\test\x .php) [function.copy]: failed to open stream: Invalid argument in C:\apachefriends\xampp\htdocs\admin\test2.php on line 18

    PHP-Code:
    <?php

    $filearray 
    file("keywords.txt");

    foreach (
    $filearray as $keyword) {

       
    $array_1 = array("ä","ü","ß");
       
    $array_2 = array("ae","ue","ss");
    for(
    $x=0;$x<3;$x++){
      
    $keyword str_replace($array_1[$x],$array_2[$x],$keyword);
    }

    $new_keyword str_replace(" ","_",$keyword);
    echo 
    "$new_keyword<br>" ;

    $datei2 "../test.php";
       
    copy ($datei2"../test/$new_keyword.php");
     }
    ?>
    Ehrlich gesagt check ich das nicht ? Hat jemand vielleicht eine Idee oder ein Workaround, habs auch mit Fopen probiert, aber genau das gleiche Problem.

    Danke Schön
    Zuletzt geändert von domdewom; 07.03.2005, 13:24.

  • #2
    da str_replace mit arrays umgehen kann ist die innere Schleife erstmal überflüssig. Schaue dir str_replace genauer an; dabei kannst du auch das 2. Replace mit in die Arrays integrieren.

    Copy erwartet 2 Argumente, so wie die Fehlermeldung aussieht, fehlt 1 Argument. Prüfe z.B. per echo, ob die Werte gültig sind.

    Kommentar


    • #3
      Also habs mit echo ausgegeben, und wert ist da, was ich nicht check ist wieso nur der letzte wert des arrays geschrieben wird!

      Kommentar


      • #4
        Original geschrieben von domdewom
        Also habs mit echo ausgegeben, und wert ist da, was ich nicht check ist wieso nur der letzte wert des arrays geschrieben wird!
        weil du nur den übrig lässt ...?


        du überschreibst $keyword in deiner schleife ja laufend ...
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Hmmm ja klar überschreib ich das Keyword ja laufend, soll ja auch immer ein neuer Wert rein, das copy is ja in der Schleife, also wenn ich das richtig interpretiere, müsste er ja für jedes neue $keyword ein mal ein copy machen, oder nicht, aber wieso schafft er es immer nur einmal und das genau am schluss ?

          Anderseits macht er keine mucken wenn man die Copy Zeile so abändert

          copy ($datei2, "../test/bla.php"); Also die Variable rausnimmt.
          Zuletzt geändert von domdewom; 07.03.2005, 14:56.

          Kommentar

          Lädt...
          X