php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
[Dateioperationen]: How to...?


 
der_Behr
31-07-2003, 12:14 
 
Ich will in einer Datei mehrere Variablen speichern und später auch abändern können. Wie mache ich das? Das mit dem Cursor und den Bytes versteh ich net so ganz, weil die Variablenlänge sich ja verändern kann.


$var1 = "wert1";
$var2 = "wert2";
$var3 = "wert3";


Wie kann ich die einzelnen Werte seperat abändern?


Noch ne Frage:
Wenn ich in eine Datei an einer bestimmten(?) Stelle code einfügen will und zwar x-mal (x is ne Variable), wie mach ich denn das? (Es is immer genau der gleiche code-Schnipsel)

Stell mir das ungefähr so vor:


Codeschnipsel 1 ; (Absatz)
(Absatz)
Codeschnipsel 2; (Absatz)
(Absatz)
...


Ach ja, vor und nach den Schnipseln kommt auch noch code!


Danke,
blick nämlich bei dem Zeug im Moment überhaupt noch nicht durch.
Es gibt doch auch eine Funktion, mit der man zeilenweise navigiert? Aber wie ersetzt man dann den Wert?

Fragen über Fragen :D Und ich hab überhaupt keinen Durchblick :D

 
Abraxax
31-07-2003, 12:21 
 
[ ] du kennst die suche im forum?
[X] du kennst das online manual unter www.php.net (http://de.php.net/manual/de/)?
[X] du kennst die funktion fopen() ?
[ ] du kennst die funktionen fgets() und fputs() ?

 
der_Behr
31-07-2003, 13:36 
 
Ich hab sogar ein Buch (für 30€!): Do IT Yourself PHP4 IT-Tutorial vom Bill


$fh = fopen('daten.txt', "a");
if (!$fh)
{ die('Öffnen von <i>log.txt</i> gescheitert!'); }

$ok = fwrite($fh, 'Die Daten sind in Ordnung.\n');
echo '<br>Ergebnis von fwrite: $ok';
fclose($fh)


Und so was steht da drin! Der hat seine Scripts wohl nichtmal getestet und stand unter Drogen ! Sieht ja selbst ein unterdurchschnittlicher Programmieranfänger wie ich, das das net stimmt.

Hab selber mal was versucht:


$testvar = 'Hallo';

$fh = fopen('daten.txt', 'w+');
fwrite($fh, $testvar.'\r\n)';
fclose($fh);
echo 'Fertig';


So hätt ich gedacht müssts stimmen, aber er sagt immer:
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in c:\html\test\index.php on line 16

 
wahsaga
31-07-2003, 14:24 
 
fwrite($fh, $testvar.'\r\n)';

du machst den string hier erst hinter der klammer wieder zu ;-)

 
Abraxax
31-07-2003, 14:50 
 
@der_Behr
wenn du nur mit reinen textdateien arbeitest sind auch fputs() und fgets() möglicherweise besser geeignet, da diese bereits zeilenweise arbeiten.

schaue mal im manual nach.... ;)

 
der_Behr
31-07-2003, 19:19 
 
Hab noch ne Frage:

fwrite($fh, "blablabla.\n")

"Beachten Sie, dass außerdem ein Zeilenendzeichen ("\n") geschrieben wird, sodass die Datei später zeilenweise gelesen werden kann."
(Steht in meinem Buch)

In der Datei müsste dann stehen:
blablabla.\n

Der Punkt ist also kein Verkettungsoperator? Sagt das \n dann php, dass die Zeile zuende ist? und warum erzeugt es keinen "richtigen" Zeilenumbruch? Geht das überhaupt?

 
Innuendo
31-07-2003, 19:24 
 
Original geschrieben von der_Behr
Der Punkt ist also kein Verkettungsoperator? Sagt das \n dann php, dass die Zeile zuende ist? und warum erzeugt es keinen "richtigen" Zeilenumbruch? Geht das überhaupt?

1. Nein, der Punkt ist ein Verkettungsoperator.
2. \n bedeutet, dass eine neue Zeile begonnen wird.
3. Was ist bei Dir ein "richtiger" Zeilenumbruch? Wenn Du damit die Darstellung im Browser meinst, braucht der Browser "<br>" und nicht "\n".

 
Abraxax
31-07-2003, 21:49 
 
Original geschrieben von Innuendo
1. Nein, der Punkt ist ein Verkettungsoperator. falsch. :teach:

der punkt ist HIERBEI tatsächlich kein verkettungsoperator. schliesslich gehört er HIERBEI zum test.

das \n sagt nur, dass in der textdatei eine neue zeile begonnen werden soll. fputs() macht dies bereits automatisch.

 
Innuendo
31-07-2003, 23:11 
 
Mein Gott, ich habe mich verschieben. Natürlich sollte es KEIN heißen, hätte ich sonst "Nein" davor geschrieben. :mad:

 
Abraxax
31-07-2003, 23:58 
 
Original geschrieben von Innuendo
hätte ich sonst "Nein" davor geschrieben. :mad: das geht aber so aus deinem satz nicht hervor. also MUSSTE ich es anmerken.

und du brauchst deswegen ja nicht gleich ausflippen.

 
der_Behr
02-08-2003, 16:19 
 
Eigentlich meinte ich die Formatierung in der Textdatei. Im Browser wärs ja kein Problem, aber dann is des in der Textdatei ja ein undurchsichtlicher Dschungel!?


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:56 Uhr.