Vorwort
Jeder Programmierer kann während der Entwicklung auf Fehler stoßen, oder es können Fehler aus anderen Gründen auftreten. Wenn der Benutzer nicht bereit ist oder die Einschränkungen der Anwendung nicht befolgt, führt dies natürlich auch zu Fehlern bei der Verwendung. In diesem Artikel wird hauptsächlich die Methode zur Verwendung von register_shutdown_function für die Ausnahmebehandlung in PHP vorgestellt. Bei Bedarf können Sie gemeinsam lernen.
Detaillierte Erläuterung der Beispiele
Um beispielsweise festzustellen, ob ein Skript ausgeführt wurde, können Sie ein Attribut auf „false“ setzen und es auf „true“ setzen, wenn die Ausführung abgeschlossen ist Verwenden Sie die von der Funktion register_shutdown_function angegebene Methode und führen Sie eine weitere Ausnahmebehandlung durch, wie im Code gezeigt:
class IndexController extends Controller { /** * 脚本执行是否完成 * @var bool */ protected $complete = false; public function __construct() { register_shutdown_function([$this, 'shutdown']); } /** * 异常处理 */ public function shutdown() { if ($this->complete === false) { dump('www.tanteng.me'); //此处应该输出日志并进行异常处理操作 } } }
Auf diese Weise können Sie schnell lokalisieren Ob das Skript unterbrochen ist, behandelt Ausnahmen über die Funktion „register_shutdown_function“ und verbessert die Robustheit des Programms. Außerdem kann es den Status von Programmunterbrechungen aufzeichnen, sodass Probleme mithilfe von Protokollen schnell lokalisiert werden können.
register_shutdown_function Ausführungsmechanismus
PHP überträgt die aufzurufende Funktion in den Speicher. Diese Funktion wird aufgerufen, wenn alle PHP-Anweisungen auf der Seite ausgeführt wurden. Beachten Sie, dass der Aufruf zu diesem Zeitpunkt aus dem Speicher und nicht von der PHP-Seite erfolgt. Wenn also Pfadinformationen vorhanden sind, sollte der absolute Pfad verwendet werden, da PHP bereits davon ausgegangen ist, dass die Originalseite nicht existiert. Es gibt überhaupt keinen relativen Pfad.
Sie können die Aufrufbedingungen wie folgt verstehen:
1. Wenn die Seite vom Benutzer zum Stoppen gezwungen wird
2. Wenn das Programm Zeitüberschreitung des Codes
3. Wenn die Ausführung des PHP-Codes abgeschlossen ist