Heim >Backend-Entwicklung >PHP-Tutorial >Beispielanalyse für PHP-Serialisierung und Deserialisierung
Dieser Artikel stellt hauptsächlich die PHP-Serialisierung und -Deserialisierung vor, kombiniert mit Beispielen zur Analyse der objektorientierten PHP-Programmierung und Serialisierungs- und Deserialisierungsfunktionen für Serialisierungs- und Deserialisierungsbezogene Verwendungsfähigkeiten, Freunde in Not Sie können sich auf die folgenden Beispiele beziehen
Dieser Artikel beschreibt die Serialisierung und Deserialisierung von PHP. Geben Sie es als Referenz an alle weiter. Die Einzelheiten lauten wie folgt:
Objekt ist ebenfalls ein im Speicher gespeicherter Datentyp, und seine Lebensdauer endet normalerweise mit der Beendigung des Programms, das das Objekt generiert hat. Manchmal müssen Sie möglicherweise den Status eines Objekts speichern und bei Bedarf wiederherstellen. Durch die Serialisierung wird jedes Objekt in eine Binärzeichenfolge umgewandelt.
<?php class Person { var $name; var $sex; var $age; function __construct($name = "", $sex = "男", $age = 22) { $this->name = $name; $this->sex = $sex; $this->age = $age; } function say() { echo $this->name . "在说话<br/>"; } function run() { echo "在走路·<br/>"; } //串行化的时候自动调用,成员$sex被忽略,只串行$name,$age function __sleep() { $arr = array("name","age"); return $arr; } //反串行化时自动调用 function __wakeup() { $this->age = 33; } } class Student extends Person { var $school; function __construct($name = "", $sex = "男", $age = 22,$school="") { parent::__construct($name,$sex,$age); $this->school = $school; } function study() { echo $this->name."正在".$this->school."学习<br/>"; } } class Teacher extends Student { var $wage; function teaching() { echo $this->name."正在".$this->school."教学,每月工资为".$this->wage."<br/>"; } //如果调用了不存在的方法,将会自动调用__call(),不会报错 function __call($functionName,$args) { echo "函数名:".$functionName; print_r($args); echo "<br/>"; } } $teacher1 = new Teacher("kaifu","男",22); $teacher1->school = "edu"; $teacher1->wage = 4000; $teacher1->say(); $teacher1->study(); $teacher1->teaching(); $teacher1->hello(1,2,3); ?>
<?php require_once 'Person.php'; $teacher = new Teacher("tom","男",22); $teacher_str = serialize($teacher); file_put_contents("file.txt", $teacher_str); //反串行化 $objStr = file_get_contents("file.txt"); $t = unserialize($objStr); echo $t->age; ?>
Serialisierte Datei.txt:
O:7:"Teacher":2:{s:4:"name";s:3:"tom";s:3:"age";i:22;}
Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.
Verwandte Empfehlungen:
Detaillierte Erläuterung von Anwendungsbeispielen der Serialisierung in PHP
PHP Die Verwendung von Serialisierung
Das obige ist der detaillierte Inhalt vonBeispielanalyse für PHP-Serialisierung und Deserialisierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!