hi,欢迎访问本站!
当前位置: 首页编程开发正文

php数组序列化与反序列化的方法

墨初 编程开发 479阅读

php脚本中可以将数组进行序列化与反序列化,需要使用php的内置函数 serialize() 与 unserialize()。 serialize() 可以将数组序列化为字符串便于保存到文件或数据库中,unserialize() 函数又可以将序列化的字符串转化为数组。

php 数组序列化的方法

serialize():可以将一个数组进行序列化,返回序列化的字符串。

例:

$arr = array('73so.com','baidu.com','qq.com'); 
$res = serialize($arr); 
echo $res;
// a:3:{i:0;s:8:"73so.com";i:1;s:9:"baidu.com";i:2;s:6:"qq.com";}

注意:serialize() 序列化为后的字符串,不能修正字符串中的任何东西,否则会造成反序列化失败。

php 反序列化的方法

unserialize():可以 serialize() 序列化的字符串还原为数组。

例:

$str = 'a:3:{i:0;s:8:"73so.com";i:1;s:9:"baidu.com";i:2;s:6:"qq.com";}';
$arr = unserialize($str); 
var_dump($arr);
// array(3) { [0]=> string(8) "73so.com" [1]=> string(9) "baidu.com" [2]=> string(6) "qq.com" }

PS:

1、php与其它程序交换数据时,请勿使用数组序列化与反序列化

2、php保存数组到文件或数组库时,推荐使用数组序列化

3、数组序列化后,请勿修改序列化的字符串

声明:无特别说明,转载请标明本文来源!
相关推荐