Mailinglisten-Archive |
Hi Sascha, Sascha Grossenbacher wrote: > Doch, ausgeführt wird der Destruktor vermutlich schon, aber es gibt einige kleine Probleme mit Destruktoren bei globalen Objekten :) > Diese werden erst sehr spät ausgeführt, zu diesem Zeitpunkt "befindet" sich PHP nicht mehr in deinem Verzeichnis sondern im Server Root, findet also vermutlich die Datei nicht mehr. > Siehe: http://ch2.php.net/manual/de/language.oop5.decon.php#71107 Das hatte ich auch gelesen und testweise mal mit mkdir ein Verzeichnis erstellt in __destruct, mit dem Ergebnis, dass mit mod_php kein Verzeichis erstellt wird und mit PHP als CGI im Webroot das entsprechende Verzeichnis erscheint. function __destruct() { // das sollte ja jetzt im Webroot erstellt werden, egal // ob PHP als CGI oder PHP als mod_php // Ergebnis: Es wird nur bei PHP als CGI ein Verzeichnis // im Webroot erstellt mkdir( "Testverzeichnis" ); } Mit echo, print_r usw. kann ja hier nicht mehr gearbeitet werden, da der output buffer zu diesem Zeitpunkt schon geflusht ist, daher hab ich zum Testen ein Verzeichnis erstellt. Also mal so generell gefragt: Funktioniert __destruct mit mod_php im Allgemeinen, also setzt Ihr das ein? Ich meine, wenn mit dem Destruktor z.B. Datenbankverbindungen geschlossen werden, kann man schlecht nachvollziehen, ob das wirklich gemacht wurde - oder? Wenn ja liegt der Fehler bei mir, wovon ich mal ausgehe (aber wo?). Wenn nein - BUG? Hinweise? Ich habe jetzt PHP 5.2.0 und PHP 5.2.1 auf zwei unterschiedlichen Systemen getestet (Slackware(Apache 2.2.0) und Ubuntu(Apache 2.0.55)), beide male PHP selber kompiliert mit: './configure' \ '--with-apxs2=/usr/bin/apxs2' \ '--enable-force-cgi-redirect' \ '--enable-fastcgi' \ '--enable-sqlite-utf8' \ '--enable-soap' \ '--with-tidy' \ '--with-mysql=/usr' \ '--with-mysqli=/usr/bin/mysql_config' \ '--enable-ftp' \ '--with-zlib-dir' \ '--enable-zip' \ '--with-interbase=/usr/lib/firebird2' \ '--with-gettext' \ '--enable-versioning' \ '--enable-sockets' \ '--enable-pcntl' \ '--with-openssl=/usr' \ '--with-iconv' \ '--enable-mbstring=all' \ '--enable-mbregex' \ '--enable-bcmath' \ '--enable-shmop' \ '--with-curl' \ '--with-kerberos' \ > > Gruss Sascha Gruss Andi
php::bar PHP Wiki - Listenarchive