Grundsätzlich sollte man nie an einem Livesystem arbeiten. In der Praxis kommt das leider immer mal wieder vor, wenn man kein komplett gespiegeltes System zum Testen hat.
Den Debug Output vor dem Besucher zu verstecken ist oberstes Gebot. Dazu zwei simple Lösungen:
print_r()
printf( '<!-- %s -->', print_r( $var, true ) ); |
var_dump()
ob_start(); var_dump( $var ); printf( '<!-- %s -->', ob_get_clean() ); |
var_export()
printf( '<!-- %s -->', var_export( $var, true ) ); |
By killerbees liefert allerdings PHP-Code zurück.
Die Lösung mit print_r() gefällt etwas besser, da sie nur eine einzige Zeile benötigt.
Und bevor wir jetzt umständlich var_dump() mit einem Ausgabebuffer verwenden: Wie wärs mit var_export() und dem zweiten Parameter? :P
MfG Christian
Eine andere Lösung ist, die eigene (statische) IP-Adresse abzufragen:
$meine_ip = “12.34.56.78″;
if( $_SERVER['REMOTE_ADDR'] == $meine_ip ):
var_dump( $var );
endif;
Zusätzlich kann man auch noch GET-Parameter abfragen usw.
@killerbees19, gute Ergänzung. Allerdings liefert var_export im Gegensatz zu var_dump PHP-Code zurück anstelle der Textentsprechung zurück.
@nico, vorrausgesetzt, du hast eine statische IP ist das ok. Ansonsten kannst du auch einen “geheimen” Key mit übergeben und überprüfen.
Kleiner Trick von mir, wenn ich keine statische IP zur Verfügung habe:
Einfach ein Cookie manuell im Browser setzen.
LG Dominik
@dominik, dass ist auch eine gute Idee.