序列化大概就是把一些變數轉化成為字串的位元組流的形式,這樣比較容易傳輸、儲存。當然,關是傳輸儲存沒有什麼,關鍵是變成串的`形式以後還能夠轉化回來,而且能夠保持原來資料的結構。以下是小編為大家搜尋整理的PHP中序列化用法,希望能給大家帶來幫助!更多精彩內容請及時關注我們應屆畢業生考試網!
1. :
*/
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. 序列化程式碼
require("./");
$p = new Person(21,"du","man"); //定義Person類物件
$pString = serialize($p); //對物件進行序列化
file_put_contents("./",$pString);//存到檔案裡
3. 反序列化程式碼
require("./");//反序列化時,也要包含原類
$pString = file_get_contents("./");//從檔案中取出序列化的值
$p = unserialize($pString);//進行反序列化