Maison  >  Article  >  développement back-end  >  Explication détaillée de l'interface de liste de séquences sérialisable de PHP

Explication détaillée de l'interface de liste de séquences sérialisable de PHP

小云云
小云云original
2018-03-22 09:37:001294parcourir

Pour personnaliser l'interface de sérialisation, vous devez implémenter vous-même les méthodes de sérialisation et de désérialisation. Les classes implémentant cette interface ne prendront plus en charge __sleep() et __wakeup(). Chaque fois qu'une instance doit être sérialisée, la méthode serialize sera appelée, elle n'appellera pas __destruct(). Lorsque les données sont désérialisées, la classe en sera consciente et la méthode unserialize() appropriée sera appelée au lieu d'appeler __construct().

Résumé de l'interface :

Serializable {
    /* 方法 */
    abstract public string serialize ( void )
    abstract public mixed unserialize ( string $serialized )
}

Exemple de description :

<?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());
?>

Sortie :

chaîne 'Mes données privées'
Recommandations associées :

php—Interface sérialisable

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Tri à bulles de tri PHPArticle suivant:Tri à bulles de tri PHP