Heim >Backend-Entwicklung >PHP-Tutorial >Detaillierte Erläuterung der Schnittstelle für serialisierbare Sequenzlisten von PHP
Um die Serialisierungsschnittstelle anzupassen, müssen Sie die Serialisierungs- und Deserialisierungsmethoden selbst implementieren. Klassen, die diese Schnittstelle implementieren, unterstützen __sleep() und __wakeup() nicht mehr. Immer wenn eine Instanz serialisiert werden muss, wird die Serialisierungsmethode aufgerufen, nicht __destruct(). Wenn Daten deserialisiert werden, erkennt die Klasse die entsprechende unserialize()-Methode und ruft sie auf, anstatt __construct() aufzurufen.
Schnittstellenzusammenfassung:
Serializable { /* 方法 */ abstract public string serialize ( void ) abstract public mixed unserialize ( string $serialized ) }
Beispielbeschreibung:
<?php /** * 自定义类的序列化操作 * * @author 疯狂老司机 */ class obj implements Serializable { private $data; public function __construct() { $this->data = "My private data"; } public function serialize() { return serialize($this->data); } public function unserialize($data) { $this->data = unserialize($data); } public function getData() { return $this->data; } } $obj = new obj; $ser = serialize($obj); $newobj = unserialize($ser); var_dump($newobj->getData()); ?>
Ausgabe:
Zeichenfolge „Meine privaten Daten“
Verwandte Empfehlungen:
php – Serialisierbare Schnittstelle
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Schnittstelle für serialisierbare Sequenzlisten von PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!