O'Reilly logo

PHP 5 Kochbuch, Third Edition by Stephan Schmidt, Ulrich Speidel, Matthias Brusdeylins, Carsten Lucke, Adam Trachtenberg, David Sklar

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

7.22 Die Objektserialisierung steuern

Problem

Sie möchten steuern, wie sich ein Objekt verhält, wenn Sie es serialisieren und deserialisieren. Das ist hilfreich, wenn Sie Verbindungen zu entfernten Ressourcen wie Datenbanken, Dateien und Webservices herstellen und schließen müssen.

Lösung

Definieren Sie die magischen Methoden __sleep( ) und __wakeUp( ), wie Sie es in Listing 7.38 sehen.

<?php class LogFile { protected $dateiname; protected $handle; public function __construct($dateiname) { $this->dateiname = $dateiname; $this->open(); } private function open() { $this->handle = fopen($this->dateiname, 'a'); } public function __destruct($dateiname) { fclose($this->handle); } // Wird aufgerufen, wenn ein Objekt serialisiert wird, und sollte // ein Array ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required