<?php
// 定义一个类
class User {
public $name;
public $age;
// 构造函数
public function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
// 序列化时调用的方法
public function __sleep() {
// 返回需要序列化的属性数组
return ['name', 'age'];
}
// 反序列化时调用的方法
public function __wakeup() {
// 这里可以执行一些初始化操作
}
}
// 创建一个User对象
$user = new User("Alice", 30);
// 序列化对象
$serializedUser = serialize($user);
echo "序列化后的字符串: \n";
echo $serializedUser . "\n";
// 反序列化对象
$unserializedUser = unserialize($serializedUser);
echo "反序列化后的对象属性: \n";
echo "Name: " . $unserializedUser->name . "\n";
echo "Age: " . $unserializedUser->age . "\n";
?>
User 类,包含两个公共属性 name 和 age,以及构造函数。__sleep 方法。这个方法返回一个数组,指定哪些属性需要被序列化。这里我们返回了 name 和 age 属性。__wakeup 方法。这个方法可以用于执行一些初始化操作。serialize 函数将对象转换为字符串表示形式。unserialize 函数将字符串还原为对象。通过这段代码,你可以看到如何在 PHP 中对对象进行序列化和反序列化操作。
上一篇:php eof
下一篇:php 时间格式化
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站