php serialize()怎么用

2021-10-16,

PHP中,serialize()用于序列化对象或数组,将其转换为一个可以存储的字符串,语法“serialize($value)”。使用serialize()函数序列化对象后,可以很方便的将它传递给其他需要它的地方,且其类型和结构不会改变。

/2021/10/8f8d2929.jpg

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

php serialize() 函数

serialize() 函数用于序列化对象或数组,将其转换为一个可以存储的字符串并返回。

以对象为例,当序列化一个对象时,将会保存对象的所有变量,但是不会保存对象的方法,只会保存类的名字。另外,为了能够反序列化一个对象,这个对象的类必须已经定义过。如果序列化类 A 的一个对象,将会返回一个跟类 A 相关,而且包含了对象所有变量值的字符串。

serialize() 函数的语法格式如下:

serialize($value)
  • $value :要序列化的变量。

serialize() 函数可以处理除了 resource(资源)之外的任何类型。当序列化对象时,PHP 会在序列动作之前调用该对象的 __sleep() 成员函数。这样就允许对象在被序列化之前做任何清除操作。类似的,当使用 unserialize() 反序列化对象时,将调用 __wakeup() 成员函数。

【示例】使用 serialize() 函数序列化一个对象。

<?php
header("Content-type:text/html;charset=utf-8");
class WebSit {
	public $name;
	public $url;
	function __construct($name, $url) {
		$this -> name = $name;
		$this -> url = $url;
	}

}

$websit = new WebSit('PHP中文网', 'https://www.php.cn/');
$ser_str = serialize($websit);
echo $ser_str;
?>

运行结果如下:

/2021/10/38e1f3a7.png" /2021/10/38e1f3a7.png" alt="1.png

说明:如果想要将已序列化的字符串变回 PHP 的值,可使用 unserialize()。

推荐学习:《PHP视频教程》

以上就是php serialize()怎么用的详细内容,更多请关注北冥有鱼其它相关文章!

本文转载自【PHP中文网】,希望能给您带来帮助,苟日新、日日新、又日新,生命不息,学习不止。

《php serialize()怎么用.doc》

下载本文的Word格式文档,以方便收藏与打印。