对于JSON(JavaScript Object Notation)大家应该不陌生,JSON建构是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。
JSON建构于两种结构:
“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 #t#
值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。 PHP的serialize是将变量序列化,返回一个具有变量类型和结构的字符串表达式,
说起来两者都是以一种字符串的方式来体现一种数据结构,那它们之间有什么区别呢。
先从JSON说起,看一个简单的实例:
- var test = {"Name":"Peter","Age":20};
- document.write(test.Name + ": " + test.Age);
显示结果:
- $arr = array
- (
- 'Peter'=> array
- (
- 'Country'=>'USA',
- 'Age'=>20
- ),
- 'Li Ming'=> array
- (
- 'Country'=>'CHINA',
- 'Age'=>21
- )
- );
- $serializeserialize_var = serialize($arr);
- echo $serialize_var;
变量test中{"Name":"Peter","Age":20}为一个有2个元素的对象(感觉就像PHP的数组):Name为Peter,Age为20。当然也可以变得复杂些。