register_shutdown_function
von mAu
am 05.04.07 um 19:36 (639 Hits)
Vorhin beim Stöbern auf php.net fand ich eine nützliche Funktion: register_shutdown_function().
In Verbindung mit z.B. einer Dateiklasse ist das ganze sehr nütlich, da man den Destruktor automatisch am Ende eines Scripts aufrufen lassen kann und man dann z.B. noch offene Dateihandles etc. schießen kann. Funktioniert natürlich bei (My)SQL-Klassen,
um die Datenbankverbindung am Ende eines jeden Scripts automatisch zu beenden. Dazu ein Beispiel:
Hoffentlich für den einen oder anderen nützlich.PHP-Code:<?php
class Test
{
/* Dateihandle */
private $_fh = null;
public function __construct($file = '')
{
$this->_fh = fopen((empty($file) ? date('m-d-Y') . '.txt' : $file), 'wb');
register_shutdown_function(array(&$this, '__destruct'));
}
public function __destruct()
{
if(is_resource($this->_fh))
{
fwrite($this->_fh,'Shutdown at ' . date('m-d-Y H:i:s'));
fclose($this->_fh);
}
}
}
$file = new Test;
?>
Bis dann,
der (abiturgestresste) mAu






