Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] Ausgabespeicher ändern und ausgeben (https://www.delphipraxis.net/68693-%5Bphp%5D-ausgabespeicher-aendern-und-ausgeben.html)

Cyberbob 3. Mai 2006 22:38


[PHP] Ausgabespeicher ändern und ausgeben
 
Hallo Comunity,

ich habe mal wieder eine Frage zu PHP! Ist es möglich den Kompletten Ausgabespeicher einzulesen, zu ändern und danach wieder einzulesen.
Ich kann den Ausgabespeicher ja löschen, aber einlesen und ändern hab ich nirgends gefunden.

Ich hoffe ihr könnt mir helfen!

Danke im vorraus!

jfheins 3. Mai 2006 22:49

Re: [PHP] Ausgabespeicher ändern und ausgeben
 
schau dir mal die ob_* Funktionen an ;)

genauer ob_get_content() oder so ...

nat 4. Mai 2006 04:06

Re: [PHP] Ausgabespeicher ändern und ausgeben
 
Code:
echo "Das hier wird nie angezeigt!";
$output = ob_get_contents();
$output = str_replace("nie", "jetzt", $output);
ob_end_clean();
//bei bedarf:
ob_start();
   
echo $output;

alcaeus 4. Mai 2006 06:48

Re: [PHP] Ausgabespeicher ändern und ausgeben
 
@nat: du musst vorher ob_start() aufrufen, damit das Output-Buffering auch sicher an ist.
Je nach Server-Einstellung wird der Content naemlich direkt zum Browser geflusht (wenn implicit_flush = on) ;)

Ab PHP 4.3.0 kannst du uebrigens statt
Code:
$output = ob_get_contents();
ob_end_clean();
auch das verwenden:
Code:
$output = ob_get_clean();
;)

Greetz
alcaeus

Cyberbob 4. Mai 2006 11:48

Re: [PHP] Ausgabespeicher ändern und ausgeben
 
Danke für die Antorten. Es funktioniert nur nicht ganz!
Ich habe jetzt mit:
Code:
$output = ob_get_contents();
$output = str_replace("\n", "", $output);
ob_end_clean();
echo $output;
Versucht alle Zeilenumbrüche zu entfernen. Enige hat er auch entfernt, aber nicht alle. Kann es daran liegen, das an diesen Stellen nicht mit PHP sondern mit HTML gearbeitet wurde?

himitsu 4. Mai 2006 11:56

Re: [PHP] Ausgabespeicher ändern und ausgeben
 
Eventuell wurde das Andere (nicht geänderte) auch schon gesendet?
die PHP-Dinger warten ja nicht bis zum Ende der Abarbeitung und senden erst dann ;)

Cyberbob 4. Mai 2006 12:05

Re: [PHP] Ausgabespeicher ändern und ausgeben
 
Doch! Dank dem ob_start() machen sie das schon. Da wird gewartet, bis alles im Speicher ist. Dann werden (SOLLTEN!!!) alle Umbrücher entfernt und dann wird alles auf einen Schlag ausgegeben. Machts aber nich

Cyberbob 4. Mai 2006 13:08

Re: [PHP] Ausgabespeicher ändern und ausgeben
 
Hat sich erledigt! Habe noch
Code:
$output = str_replace(chr(13), "", $output);
$output = str_replace(chr(10), "", $output);
hinzugefügt und jetzt wurden alle umbrüche entfernt.

Danke an alle die geholfen haben!

himitsu 4. Mai 2006 13:54

Re: [PHP] Ausgabespeicher ändern und ausgeben
 
dann kannst du ja str_replace("\n", "", $output); weglassen, denn dieses "/n" sollte doch chr(10) sein?

Cyberbob 13. Aug 2006 22:42

Re: [PHP] Ausgabespeicher ändern und ausgeben
 
So, habe nun noch einen Fehler festgestellt.

Es functioniert alles! Nur habe ich das Problem, wenn ich per php-Explorer eine Datei ändere und Speichere funktioniert es nict mehr, obwohl sich der Inhalt der Datei nicht geändert hat. (Binär-gleiche Dateien).

Was mach ich falsch?


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:14 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz