【发布时间】:2012-01-28 08:07:22
【问题描述】:
我的问题很基础。
关于serialize() 和unserialize() 在php 中的确切含义,我没有找到任何示例来满足我的需求?他们只是举了一个例子——序列化一个数组并以一种无法解释的格式显示输出。通过他们的行话很难理解基本概念。
编辑:
<?php
$a= array( '1' => 'elem 1', '2'=> 'elem 2', '3'=>' elem 3');
print_r($a);
echo ("<br></br>");
$b=serialize($a);
print_r($b);
?>
输出:
Array ( [1] => elem 1 [2] => elem 2 [3] => elem 3 )
a:3:{i:1;s:6:"elem 1";i:2;s:6:"elem 2";i:3;s:7:" elem 3";}
我无法理解第二个输出。除此之外,谁能举例说明我需要在使用它之前序列化一个php数组吗?
【问题讨论】:
-
如果您仍然对“辅助输出”感到好奇,它相当简单:a = 数组,3 = {} 中的三个元素。在其中,你有 i=integer/index 等于 1,len 6 的字符串等于“elem 1”,整数等于 2.. 等等等等。当你这样阅读时,它相当清楚。你可以想象很容易包含多个级别的数组/对象,但是修改是非常不明智的,你应该真正反序列化修改然后序列化以确保一致性。
-
@IstiaqueAhmed,关于“谁能举个例子说明我需要在使用它之前序列化一个php数组”,stackoverflow.com/a/30436890/632951有这样一个例子
-
@grizly 谢谢伙计,两年来我一直在寻找这样的答案,我不知道如何解释,也不知道如何关联使用该功能的原因,谢谢回答
标签: php