Maison  >  Article  >  développement back-end  >  Utilisation de la sérialisation en PHP

Utilisation de la sérialisation en PHP

墨辰丷
墨辰丷original
2018-05-30 17:36:131414parcourir

Cet article présente principalement l'utilisation de la sérialisation en PHP et analyse les compétences associées de PHP en utilisant les fonctions de sérialisation et de désérialisation pour implémenter les opérations de sérialisation et de désérialisation sous forme d'exemples. Les amis dans le besoin peuvent s'y référer

<.>Fonction : la sérialisation est utilisée pour stocker ou transmettre des objets, et l'objet est obtenu par désérialisation.


1. Person.class.php :

<?php
/*
作者 : shyhero
*/
class Person{ //声明一个Person类
  public $age;
  private $name;
  protected $sex;
  public function __construct($age="",$name="",$sex=""){
   $this -> age = $age;
   $this -> name = $name;
   $this -> sex = $sex;
  }
  public function say(){
   return $this -> age." ".$this -> name." ".$this -> sex;
  }
  function __sleep(){ //指定串行化时能提取的成员属性,没有参数,但是必须返回一个数组
   $arr = array("age","name");
   return $arr;
  }
  function __wakeup(){ //指定反串行化时,提取出来的值
   $this -> sex = "woman";
  }
}

2. >

3. Code de désérialisation
<?php
  require("./Person.class.php");
  $p = new Person(21,"du","man"); //定义Person类对象
  $pString = serialize($p);  //对对象进行串行化
  file_put_contents("./file.txt",$pString);//存到文件里

<?php
  require("./Person.class.php");//反串行化时,也要包含原类
  $pString = file_get_contents("./file.txt");//从文件中取出串行化的值
  $p = unserialize($pString);//进行反串行化
  var_dump($p);  //这个 $p就是之前那个串行化的对象,一样用,但是里面的值被我改了

Ci-dessus C'est tout le contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :


PHP implémente un algorithme de tri par bucket

Algorithme de tri PHP Explication détaillée du tri par fusion de la série

opération cohérente de la base de données du framework thinkPHP5 : détails d'utilisation du cache()


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