《PHP教程:PHP串行化与反串行化实例分析》要点:
本文介绍了PHP教程:PHP串行化与反串行化实例分析,希望对您有用。如果有疑问,可以联系我们。
PHP学习本文实例讲述了PHP串行化与反串行化.分享给大家供大家参考,具体如下:
PHP学习对象也是一种在内存中存储的数据类型,他的寿命通常随着生成该对象的程序的终止而终止.有时候可能需要把对象的状态保存下来,需要时再将其回复.串行化是把每个对象转化为二进制字符串.
- PHP学习
- <?php
- class Person {
- var $name;
- var $sex;
- var $age;
- function __construct($name = "", $sex = "男", $age = 22) {
- $this->name = $name;
- $this->sex = $sex;
- $this->age = $age;
- }
- function say() {
- echo $this->name . "在说话<br/>";
- }
- function run() {
- echo "在走路・<br/>";
- }
- //串行化的时候自动调用,成员$sex被忽略,只串行$name,$age
- function __sleep() {
- $arr = array("name","age");
- return $arr;
- }
- //反串行化时自动调用
- function __wakeup() {
- $this->age = 33;
- }
- }
- class Student extends Person {
- var $school;
- function __construct($name = "", $sex = "男", $age = 22,$school="") {
- parent::__construct($name,$sex,$age);
- $this->school = $school;
- }
- function study() {
- echo $this->name."正在".$this->school."学习<br/>";
- }
- }
- class Teacher extends Student {
- var $wage;
- function teaching() {
- echo $this->name."正在".$this->school."教学,每月工资为".$this->wage."<br/>";
- }
- //如果调用了不存在的方法,将会自动调用__call(),不会报错
- function __call($functionName,$args) {
- echo "函数名:".$functionName;
- print_r($args);
- echo "<br/>";
- }
- }
- $teacher1 = new Teacher("kaifu","男",22);
- $teacher1->school = "edu";
- $teacher1->wage = 4000;
- $teacher1->say();
- $teacher1->study();
- $teacher1->teaching();
- $teacher1->hello(1,2,3);
- ?>
- PHP学习
- <?php
- require_once 'Person.php';
- $teacher = new Teacher("tom","男",22);
- $teacher_str = serialize($teacher);
- file_put_contents("file.txt", $teacher_str);
- //反串行化
- $objStr = file_get_contents("file.txt");
- $t = unserialize($objStr);
- echo $t->age;
- ?>
PHP学习串行化 file.txt :
- PHP学习
- O:7:"Teacher":2:{s:4:"name";s:3:"tom";s:3:"age";i:22;}
PHP学习
PHP学习更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
PHP学习希望本文所述对大家PHP程序设计有所帮助.
转载请注明本页网址:
http://www.vephp.com/jiaocheng/2234.html