Die sogenannte Serialisierung besteht darin, die Daten einer Variablen in eine Zeichenfolge umzuwandeln (sie unterscheidet sich jedoch von der Typkonvertierung). Der Zweck besteht darin, diese Zeichenfolge (als Textdatei) zu speichern, damit sie deserialisiert und wiederhergestellt werden kann, wenn sie in anderen Umgebungen ausgeführt wird. (Wird im Allgemeinen dort verwendet, wo Daten gespeichert werden müssen)
Serialisierung:
$str=serialize ($variable) //Konvertieren Sie die Daten in eine Zeichenfolge und speichern Sie sie in der Variablen $ str.
file_put_conetents("Textdateipfad",$str);//Speichern Sie die Datei in einer Textdatei.
Deserialisierung:
$str=file_get_contents("Text file path");//Die in der Datei gespeicherten serialisierten Informationen abrufen.
$value=unserialize($str); //Konvertieren Sie den abgerufenen String-Inhalt in normale Daten und speichern Sie ihn in $value.
Magische Methoden zur Serialisierung und Deserialisierung:
__sleep(): Beim Serialisieren eines Objekts einer bestimmten Klasse wird automatisch die Methode __sleep() aufgerufen
Verwenden Sie diese Methode, um die zu serialisierenden Daten auszuwählen, die erforderlichen Attribute auszuwählen und sie im Array zu speichern. Der Wert wird nach dem Ende zurückgegeben.
__wakeup(): Genau das Gegenteil von __sleep() Wenn es während der Deserialisierung aufgerufen wird, können einige nützliche Vorgänge ausgeführt werden, um den Status vor der Serialisierung wiederherzustellen (z. B. Datenbankverbindung). Da die Serialisierung nur die erforderlichen Attribute in Zeichenfolgen umwandelt und speichert und die Deserialisierung die Zeichenfolgen nur wieder in Daten umwandelt, einige Zustände jedoch nicht in den vorherigen Zustand zurückkehren, können Sie den Vorgang mit __wakeup() ausführen. wieder in den exakt gleichen Zustand wie zuvor.
Verwandte Empfehlungen:
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der PHP-Serialisierung und Deserialisierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!