今天在读取一个表中的字段的时候,发现是这种格式的
a:17:{s:2:”id”;s:3:”140″;s:7:”uniacid”;s:2:”19″;s:6:”openid”;s:28:”ouPL3w0096buOT-_DMVTEkntgPTI”;s:8:”realname”;s:9:”焦国强”;s:6:”mobile”;s:11:”15269847585″;s:8:”province”;s:9:”山东省”;s:4:”city”;s:9:”泰安市”;s:4:”area”;s:9:”岱岳区”;s:7:”address”;s:47:”科技中路77号山东国泰科技有限公司”;s:9:”isdefault”;s:1:”1″;s:7:”zipcode”;s:0:””;s:7:”deleted”;s:1:”0″;s:6:”street”;s:0:””;s:9:”datavalue”;s:0:””;s:15:”streetdatavalue”;s:0:””;s:3:”lng”;s:0:””;s:3:”lat”;s:0:””;}
怎么读取这个表中的信息呢,看着挺乱的,其实,这就是序列号后的数据,通过把数组序列化,可以在一个字段中就存储大量的数据,不用建立那么多的字段了,使用的时候,只要反序列化unserialize($data)就行了。
如何读取上面的数据呢?
$data = '序列化数据';//注意使用单引号
$res = unserialize($data);
var_dump($res);
读取的结果是一个一位数组,格式如下:
array(17) {
["id"]=>
string(3) "140"
["uniacid"]=>
string(2) "19"
["openid"]=>
string(28) "ouPL3w0096buOT-_DMVTEkntgPTI"
["realname"]=>
string(9) "焦国强"
["mobile"]=>
string(11) "15269847585"
["province"]=>
string(9) "山东省"
["city"]=>
string(9) "泰安市"
["area"]=>
string(9) "岱岳区"
["address"]=>
string(47) "科技中路77号山东国泰科技有限公司"
["isdefault"]=>
string(1) "1"
["zipcode"]=>
string(0) ""
["deleted"]=>
string(1) "0"
["street"]=>
string(0) ""
["datavalue"]=>
string(0) ""
["streetdatavalue"]=>
string(0) ""
["lng"]=>
string(0) ""
["lat"]=>
string(0) ""
}