2016-04-15 9 views
-1

I Textdatei mit Linien:Tag vor und nach der Zeile in Textdatei mit PHP

text1 
text2 
text3 

Ich brauche Tag Zugabe vor und nach dem Text

Ausgabe

<h1>text1</h1> 
<h1>text2</h1> 
<h1>text3</h1> 

I verwende dieses Skript

$file = file_get_contents("test.txt"); 
$handle = fopen($file); 
$output = ''; 
while (($line = fgets($handle)) !== false)  { 
$output .= '<h1>' . $line .'</h1>' . "\n"; 
} 
fclose($handle); 
file_put_contents($output, $file); 

habe ich diesen Fehler:

Warning: fopen() expects at least 2 parameters, 1 given in on line 4
Warning: fgets() expects parameter 1 to be resource, boolean given on line 7
Warning: fclose() expects parameter 1 to be resource, boolean given in line 10
Warning: file_put_contents(): Filename cannot be empty in line 11

+0

werfen Sie einen Blick auf das Dokument. Geben Sie einfach "php fopen" ein, Sie werden php.net finden und erwartete Parameter sehen. – Random

+1

1) Sie verwenden 'file_get/put_contents()' und 'fopen()', während 'file_get_contents()' bereits die Datei öffnet 2) Warum möchten Sie Ihren Text mit HTML-Tags speichern? Ich würde es ohne es speichern, und wenn Sie es ausgeben möchten, verwenden Sie sie einfach – Rizier123

Antwort

1

In fopen(); Funktion einen Parameter-Modus ist, dass die Art des Zugriffs angibt Sie den Strom benötigen, aufgrund dieser Sie Warnungen erhalten .. mehr zu f_open() lesen.

Hier habe ich zwei Methoden für Sie in der Datei schreiben

Methode 1: Mit file_get_contents() und file_put_contents()

$file = 'test.txt'; 
// Open the file to get existing content 
$current = file_get_contents($file); 
$rows = explode("\n", $current); 
$output= ''; 
foreach($rows as $row) 
{ 
    $output .= '<h1>'.$row.'</h1>'. "\n"; 
} 
file_put_contents($file, $output); 

Methode: 2 Ist das Ihre

versuchen, zu verwenden
$file = 'test.txt'; 
$current = file_get_contents($file); 
$handle = fopen($file,'r'); 
$output = ''; 
while (($line = fgets($handle)) !== false)  
{ 
    $output .= '<h1>'. $line .'</h1>'."\n"; 
} 
fclose($handle); 
file_put_contents($file, $output); 
+0

froh, Ihnen @vallez zu helfen, stimmen Sie meine Antwort ab, wenn es für Sie nützlich ist ... :) –

Verwandte Themen