alle variablen in datei ausgeben
carsten schlichting
- php
hallo
mit print_r($_SESSION);
kann man sich ja in php die session_variablen ausgeben lassen.
da meine seite durch fixe Inhalte und browserkompatibiltät etwas empfindlich ist,
ist es recht schwierig diese ausgabe auf ein div mit <pre></pre> zu legen, das den Rest der Seite überlagert.Auch JS reagiert etas empfindlich auf diese ausgabe, da irgendwie JS_funktionen, die ich über PHP_variablen einfüge, falsch_aktiviert werden.
irgendwie scheint das was ich mache zwar gut gemeint zusein, aber leider nicht ganz rund.
vielleicht gibt es da noch eine andere methode..und vielleicht weiß jemand, ob man sich diese ausgabe auch in einer extra datei ausgeben lassen kann.
wär wahrscheinlich der einfachste weg--fragt sich aber nur wie?
grüße von mir carsten
Hallo,
Das ganze soll ja eigentlich zum debuggen dienen.
Ich mach es immer so, dass ich solchen Debug-output in ganz normalen HTML-Kommentaren ausgebe. Da wird das Design nicht verhaut und es ist auch noch recht leicht erreichbar.
Ab Version 4.3 kannst du den Output von print_r auch ganz einfach in eine Textdatei schreiben, in dem du ihm den return Parameter mitgibst:
$fp = fopen("foo.txt","a");
fwrite($fp,print_r($_SESSION,true));
fclose($fp);
Gruß,
Severin
dankeschön.
les es gerade im php-manual nach
und ich denke ich werd es hinbekommen
grüße und danke nochmal
carsten
hi,
Ich mach es immer so, dass ich solchen Debug-output in ganz normalen HTML-Kommentaren ausgebe. Da wird das Design nicht verhaut
Es sei denn, eine deiner Variablen würde bspw. --> enthalten, und du maskierst es nicht irgendwie :-)
gruß,
wahsaga
$fp = fopen("foo.txt","a");
fwrite($fp,print_r($_SESSION,true));
fclose($fp);
hallo
habe obiges nun ausprobieren können, und es funktioniert.
habe auch mit einer zusätzlichen variable
$fv=get_defined_vars(); auch andere informationen ausgeben lassen können.
jetzt ist nur alles sehr unübersichtlich.
wie bekomme ich diese daten denn nun als HTML ausgegeben?
vielleicht indem ich am Anfang und am Ende ein <pre> bzw</pre> einsetze??
Auf jedenfall nocheinmal danke
und Grüße
carsten
Hallo,
wie bekomme ich diese daten denn nun als HTML ausgegeben?
Du kannst dieses "Errorlog" nach belieben mit HTML formattieren und dann einfach im Browser anschauen.
Also Zb:
$fp = fopen("log.html","a");
fwrite($fp,"<h1>Ausgabe der SESSION-Variable:</h1>");
fwrite($fp,"<pre>".print_r($_SESSION,true)."</pre>");
fwrite($fp,"<hr>");
fclose($fp);
oder so ähnlich.
Gruß,
Severin