Seite 1 von 1

Zeichen aus Text rausfiltern

Verfasst: 20.05.2007 22:12
von |L1n3
Hallo ich möchte (und tue es bereits) eine textdatei, die von einer batch erstellt wurde mit php auslesen und anzeigen.
Dazu nutze ich momentan folgenden Code:

Code: Alles auswählen

<html>
<meta http-equiv="refresh" content="60">
<head>

<?php
$fp=fopen("log.txt","r");
if($fp)
{
while(!feof($fp))
{
$zeile=fgets($fp, 100);
echo "$zeile";
}
fclose($fp);
}
else
echo"Datei ist nicht vorhanden";
?>

</head>
</html>
Da ich ohne den einsatz von absätzen in der textdatei (sprich <BR>) keinen zeilenumbruch auf der seite habe und der text einfach unförmig ausgegeben wird lasse ich meine batch immer dann wenn einer hinkommen soll einen <BR> in die textdatei schreiben.
Da dies aber zu einem Fehler führt das < und > nicht erlaubt sind muss ich <br> zwischen " " setzen.
Diese sind dann aber wiederrum auch in der textdatei zu finden und sind später auch bei der ausgabe sichtbar.
Nun möchte ich das mein php script die " rausfiltert aber die zeilenumbrüche beibehält.

Vielen Dank schonmal für eure Hilfe

Verfasst: 20.05.2007 23:10
von punkface
<br> weglassen und bei der Ausgabe die PHP Funktion nl2br verwenden.

Verfasst: 21.05.2007 14:34
von |L1n3
punkface hat geschrieben:<br> weglassen und bei der Ausgabe die PHP Funktion nl2br verwenden.
Das heisst ich muss meine batch statt "<br>" /r/n in den log schreiben lassen ?
Das ist ja kein problem, aber wie muss ich die funktion einbauen in mein script ?
Der Richtige code für meinen gebrauch wäre doch:

Code: Alles auswählen

function nl2br2($string) {
$string = str_replace(array("\r\n", "\r", "\n"), "<br />", $string);
return $string;
}
Oder nicht ?

Vielen Dank schon-\nochmal :wink:

Verfasst: 21.05.2007 23:01
von |L1n3
weiss keiner wie ?
habs jetzt probiert den code nach den fopen befehl zu stuppn hat aber nicht fukntioniert.
Muss doch warscheinlich was anpassen.
Aus den anleitungen auf der php seite werd ich net schlau .. und ich hab erst mit php angefangen, kenn mich mit der syntax noch net so aus.

Bitte helft mir

Verfasst: 21.05.2007 23:20
von gn#36
Falls du sowieso nur die komplette Datei einlesen willst dann würde ich dir eine etwas andere Kombination empfehlen:

Code: Alles auswählen

$file = implode('',file('log.txt'));
echo nl2br($file);
Eventuell musst du auch sowas verwenden:

Code: Alles auswählen

$file = implode("\n",file('log.txt'));
echo nl2br($file);
Im Prinzip müsste aber es sogar

Code: Alles auswählen

echo implode('<br>',file('log.txt'));
tun.

Noch ein wenig Lesestoff:
http://de3.php.net/manual/de/function.f ... ntents.php
http://de3.php.net/manual/de/function.file.php