Le contenu de cet article concerne la sérialisation d'objets [classes et objets php], qui a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent se référer à
Séquence d'objets.
Sérialiser les objets - stocker les objets dans la session
sérialiser() peut sérialiser toutes les valeurs en php pour renvoyer un flux d'octets représenté par une chaîne.
La fonction unserialize() peut rétablir la chaîne à la valeur d'origine de PHP.
La sérialisation d'un objet enregistrera toutes les variables de l'objet, mais les méthodes de l'objet ne seront pas enregistrées, seul le nom de la classe sera enregistré.
objet unserialize(), la classe de l'objet doit être définie.
Si vous sérialisez un objet de classe A, une chaîne liée à la classe A et contenant les valeurs de toutes les variables de l'objet sera renvoyée.
Si vous souhaitez désérialiser un objet dans un autre fichier, la classe de l'objet doit être définie avant la désérialisation, soit en incluant un fichier qui définit la classe, soit en utilisant la fonction spl_autoload_register().
<?php// classa.inc: class A { public $one = 1; public function show_one() { echo $this->one; } }// page1.php: include("classa.inc"); $a = new A; $s = serialize($a); // 把变量$s保存起来以便文件page2.php能够读到 file_put_contents('store', $s);// page2.php: // 要正确了解序列化,必须包含下面一个文件 include("classa.inc"); $s = file_get_contents('store'); $a = unserialize($s); // 现在可以使用对象$a里面的函数 show_one() $a->show_one();?>
Utilisez la fonction session_register() pour enregistrer les objets dans la session. Ces objets seront automatiquement sérialisés à la fin de chaque page et désérialisés au début de chaque page. Ainsi, une fois les objets enregistrés dans la session, ils sont disponibles dans les pages de l'application.
Les événements de sérialisation/désérialisation peuvent être gérés à l'aide des méthodes __sleep() et __wakeup() sur l'objet.
session_register() Obsolète dans PHP 5.3.0 et supprimée dans PHP 5.4.0.
Sérialisation d'objets
Sérialiser des objets - stocker des objets dans la session
serialize() peut sérialiser tous les php La valeur à l'intérieur est renvoyé sous forme de chaîne contenant un flux d'octets.
La fonction unserialize() peut rétablir la chaîne à la valeur d'origine de PHP.
La sérialisation d'un objet enregistrera toutes les variables de l'objet, mais les méthodes de l'objet ne seront pas enregistrées, seul le nom de la classe sera enregistré.
objet unserialize(), la classe de l'objet doit être définie.
Si vous sérialisez un objet de classe A, une chaîne liée à la classe A et contenant les valeurs de toutes les variables de l'objet sera renvoyée.
Si vous souhaitez désérialiser un objet dans un autre fichier, la classe de l'objet doit être définie avant la désérialisation, soit en incluant un fichier qui définit la classe, soit en utilisant la fonction spl_autoload_register().
<?php// classa.inc: class A { public $one = 1; public function show_one() { echo $this->one; } }// page1.php: include("classa.inc"); $a = new A; $s = serialize($a); // 把变量$s保存起来以便文件page2.php能够读到 file_put_contents('store', $s);// page2.php: // 要正确了解序列化,必须包含下面一个文件 include("classa.inc"); $s = file_get_contents('store'); $a = unserialize($s); // 现在可以使用对象$a里面的函数 show_one() $a->show_one();?>
Utilisez la fonction session_register() pour enregistrer les objets dans la session. Ces objets seront automatiquement sérialisés à la fin de chaque page et désérialisés au début de chaque page. Ainsi, une fois les objets enregistrés dans la session, ils sont disponibles dans les pages de l'application.
Les événements de sérialisation/désérialisation peuvent être gérés à l'aide des méthodes __sleep() et __wakeup() sur l'objet.
session_register() Obsolète dans PHP 5.3.0 et supprimée dans PHP 5.4.0.
Recommandations associées :
[classes et objets php] objets et références
[classes et objets php] Mot-clé final
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!