2011-01-16 9 views
2

Wie füge ich den folgenden Text an den Anfang neuer Zeilen in einem Textdokument mit PHP an?Text an Zeilen im Textdokument anfügen, mit PHP

Line 1: T: my text here
Line 2: Z: my text here
Line 3: T: my text here

usw.

Grundsätzlich wechseln zwischen T, und Z :.

Angenommen, ich verwende eine Art Explosion? Danke

Antwort

3

Verwenden Sie file, um jede Zeile der Datei zu erhalten. Dann jede Zeile durchlaufen, Ihren Text anhängen und die Datei file_put_contents

<?php 

$lines = file('input-file.txt'); 

$output = ''; 
$TorZ = 'T'; 
foreach ($lines as $line) 
{ 
    $output .= $TorZ.': '.$line.PHP_EOL; 

    if($TorZ == 'T') 
     $TorZ = 'Z'; 
    else 
     $TorZ = 'T'; 
} 

file_put_contents('output.txt', $output); 
?> 
0

mit speichern, wenn es in der Datei ist, verwenden Sie file() die Datei zu lesen, werden Sie Reihe von Linien erhalten. Wenn es sich um eine Zeichenfolge handelt, verwenden Sie explode("\n", $string). Wenn Sie das Trennzeichen nicht kennen, können Sie preg_split("/(\n|\r|\n\r)/", $string) verwenden. Schleifen Sie dann die Elemente des Arrays und fügen Sie den String voran. Verwenden Sie dann join("\n", $arr), um das Array wieder in einen String umzuwandeln. Wenn Sie Separatoren beibehalten müssen, verwenden Sie preg_split wie oben mit der Option PREG_SPLIT_DELIM_CAPTURE und überspringen Sie Trennzeichen beim Voranstellen von Strings.

Wenn Sie file() verwendet haben, sind die Leitungsenden bereits vorhanden, also verwenden Sie file_put_contents("newfile", join('', $arr)), um es zurückzuschreiben.