程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP中串行化用法示例

PHP中串行化用法示例

編輯:PHP綜合

本文實例講述了PHP中串行化用法。分享給大家供大家參考,具體如下:

功能:串行化用於對對象的存儲或者傳輸,通過反串行化得到這個對象。

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. 串行化代碼

<?php
  require("./Person.class.php");
  $p = new Person(21,"du","man"); //定義Person類對象
  $pString = serialize($p);  //對對象進行串行化
  file_put_contents("./file.txt",$pString);//存到文件裡

3. 反串行化代碼

<?php
  require("./Person.class.php");//反串行化時,也要包含原類
  $pString = file_get_contents("./file.txt");//從文件中取出串行化的值
  $p = unserialize($pString);//進行反串行化
  var_dump($p);  //這個 $p就是之前那個串行化的對象,一樣用,但是裡面的值被我改了

更多關於PHP相關內容感興趣的讀者可查看本站專題:《php字符串(string)用法總結》、《PHP數組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《PHP網絡編程技巧總結》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved