原文:
http://www.cnblogs.com/mingda/archive/2010/06/07/performance_test_of_php_object_serialization.html
还有
http://hi.baidu.com/snailzzz/blog/item/84e1c450184d497684352419.html
第一个比较的挺单纯,
第二个复杂一点点, 考虑到了复杂程度.
普遍反映json_decode的速度比较差.
我也正在纠结是用哪种方式保存数据. 想来想去.
我把第一个写的程序跑了一下.
下面是我的结果:
json : 190 serialize : 257 json_encode : 0.0481059551239 json_decode : 0.110748052597 serialize : 0.049724817276 unserialize : 0.041111946106 DONE.
从中不难看出, 主要是json_decode vs unserialize 的性能差别太大了.
于是乎我冒出个想法, 用 json_decode ( $str, true), 解码成数组, 性能明显提高, 跟unserialize 差别可以接受了, 如下是解码成数组的结果:
json : 190 serialize : 257 json_encode : 0.0321428775787 json_decode : 0.0567181110382 serialize : 0.0339670181274 unserialize : 0.0277500152588 DONE.
供大家参考.
分享到:
相关推荐
通过本次性能测试,我们试图了解在处理大量数据时,json_encode与json_decode与serialize与unserialize相比,其效率如何。实验分别在PHP5.2.13和PHP5.3.2两个不同环境下执行,对同一个变量进行了10000次序列化和反...
6. **性能比较**:在性能方面,序列化(如`serialize`)通常比JSON快,但JSON具有更好的可读性和通用性。在实际应用中,应根据项目需求选择合适的方式。 通过理解这些知识点,开发者可以更好地在PHP的GBK环境下处理...
本文将深入探讨PHP中数组与字符串之间的转换方法。 一、数组转换为字符串 1. `implode()` 函数:`implode()`函数允许我们将数组元素连接成一个字符串,使用指定的分隔符。例如: ```php $array = ['apple', '...
`json_encode()`和`json_decode()`函数分别用于将PHP值转为JSON字符串和将JSON字符串解析为PHP值。 ```php class MyClass { public $var1; public $var2; public function toJson() { return json_encode(get_...
PHP从5.2版本开始内置了对JSON的支持,提供了json_encode()和json_decode()两个核心函数,使得在PHP中处理JSON数据变得十分便捷。 1. **json_encode()** json_encode()函数用于将PHP的数据结构(如数组或对象)...
PHP提供了两种主要的序列化方法:`serialize()` 和 `unserialize()` 以及 `json_encode()` 和 `json_decode()`。下面我们将详细探讨这两种方法及其特点。 1. `serialize()` 和 `unserialize()` 函数: - `...
2. **PHP 中的 json_encode 和 json_decode** - `json_encode` 函数是 PHP 处理 JSON 的核心,它接受一个 PHP 变量作为输入,并返回该变量的 JSON 表示形式。例如,一个关联数组可以被编码为 JSON 对象: ```php ...
PHP提供了两种序列化和反序列化的机制,即使用serialize()和unserialize()函数进行PHP特有的序列化与反序列化,以及使用json_encode()和json_decode()函数进行JSON格式的序列化与反序列化。 首先,让我们来分析一下...
$json = json_encode($value); // ATTENTION:encode with json // {"code":"123","msg":"true str","null":null,"new":"","double":1} $value = jsonlite_decode($json); var_export($value); /** * array ( * '...
在性能方面,`json_encode`和`json_decode`与`serialize`和`unserialize`相比,通常在处理JSON数据时更快,因为它们是专为JSON格式设计的。但要注意的是,`serialize`和`unserialize`是PHP内部的序列化和反序列化...
在PHP编程中,序列化和反序列化是两个关键的操作,它们允许...通过比较和实践,开发者可以更好地判断何时使用`serialize`/`unserialize`,何时使用`json_encode`/`json_decode`,从而编写出更加高效和灵活的PHP代码。
`serialize()`和`unserialize()`是PHP中处理复杂数据结构的工具。`serialize()`将变量转化为可存储的字符串形式,而`unserialize()`能将这个字符串再转换回原生的PHP值。 `json_encode()`和`json_decode()`是PHP...
`serialize`和`unserialize`适合PHP内部使用,`json_encode`和`json_decode`则更适合跨语言的数据交换,而`var_export`和`eval`以及`wddx_serialize_value`和`wddx_deserialize`在特定情况下有其优势。选择哪种方法...
在PHP中,经常使用的序列化方式包括了PHP原生的serialize以及更为通用的JSON格式化。以下是根据给定文件信息,对PHP的serialize序列化和JSON格式化数据分析的知识点进行详细说明。 首先,PHP的serialize函数的作用...
本文将详细讲解PHP中实现序列化和反序列化的多种方法,包括serialize和unserialize、json_encode和json_decode、var_export和eval以及wddx_serialize_value和wddx_deserialize。 1. serialize和unserialize `...