兄弟帮个忙:用serilize把php数组存入数据库,怎么取回原来的数组啊?字符串如下:

a:1:{i:29;a:1:{i:0;a:13:{s:2:"id";s:2:"29";s:7:"cata_id";s:2:"29";s:4:"name";s:52:"歌莉... a:1:{i:29;a:1:{i:0;a:13:{s:2:"id";s:2:"29";s:7:"cata_id";s:2:"29";s:4:"name";s:52:"歌莉娅2013女装透视修身甜美气质蕾丝女";s:7:"attr_id";a:4:{s:6:"风格";a:1:{i:0;s:6:"欧式";}s:6:"颜色";a:1:{i:0;s:6:"白色";}s:6:"尺寸";a:1:{i:0;s:1:"S";}s:6:"赠品";a:4:{i:0;s:9:"小挂件";i:1;s:9:"小玩具";i:2;s:4:"Q币";i:3;s:9:"吉祥物";}}s:12:"attr_id_html";s:99:"风格:欧式
颜色:白色
尺寸:S
赠品:小挂件 小玩具 Q币 吉祥物
";s:11:"attr_id_sql";s:90:"%风格%%欧式%%颜色%%白色%%尺寸%%S%%赠品%%小挂件%%小玩具%%Q币%%吉祥物%";s:3:"num";s:1:"1";s:4:"unit";s:3:"件";s:2:"sn";N;s:6:"weight";s:4:"2.33";s:10:"thumbnail2";s:47:"./uploads/20130604/20130604182722819220x220.png";s:10:"price_sale";s:6:"158.45";s:11:"price_total";d:158.44999999999998863131622783839702606201171875;}}}
展开
 我来答
shenkebiao
2015-09-24 · TA获得超过605个赞
知道小有建树答主
回答量:367
采纳率:100%
帮助的人:144万
展开全部

先从数据库中取出字符串,再使用 unserialize 函数还原;

$data = array('asd','w' => 'asd');
var_dump(serialize($data));    // 序列化后的字符串
var_dump(unserialize($data));  // 将序列化的字符串还原为数组
更多追问追答
追问
但是我这个不行啊,是不是因为这里有特殊字符啊:在 
风格:欧式
颜色:白色
尺寸:S
赠品:小挂件 小玩具 Q币 吉祥物
他们四组后面有个字符呀?
追答

因为你的数据中就有换行,所以会有 <br/>标签,把多行合成一行就不会有了。

a:1:{i:29;a:1:{i:0;a:13:{s:2:"id";s:2:"29";s:7:"cata_id";s:2:"29";s:4:"name";s:52:"歌莉娅2013女装透视修身甜美气质蕾丝女";s:7:"attr_id";a:4:{s:6:"风格";a:1:{i:0;s:6:"欧式";}s:6:"颜色";a:1:{i:0;s:6:"白色";}s:6:"尺寸";a:1:{i:0;s:1:"S";}s:6:"赠品";a:4:{i:0;s:9:"小挂件";i:1;s:9:"小玩具";i:2;s:4:"Q币";i:3;s:9:"吉祥物";}}s:12:"attr_id_html";s:99:"风格:欧式 颜色:白色 尺寸:S 赠品:小挂件 小玩具 Q币 吉祥物 ";s:11:"attr_id_sql";s:90:"%风格%%欧式%%颜色%%白色%%尺寸%%S%%赠品%%小挂件%%小玩具%%Q币%%吉祥物%";s:3:"num";s:1:"1";s:4:"unit";s:3:"件";s:2:"sn";N;s:6:"weight";s:4:"2.33";s:10:"thumbnail2";s:47:"./uploads/20130604/20130604182722819220x220.png";s:10:"price_sale";s:6:"158.45";s:11:"price_total";d:158.44999999999998863131622783839702606201171875;}}}


至于有没有特殊字符不影响,像 'asd21_)|}"!@#¥%……&*()——-0?*&^%^$&<div></div>' 这些东西都可以直接序列化和反序列化,反序列化的时候都能转回去,至于你这个,可能是存之前的原始数据有问题或者是序列化之后的数据被修改过,建议查看一下原始数据有没有问题;

雷雪松
2015-09-25 · TA获得超过394个赞
知道小有建树答主
回答量:545
采纳率:0%
帮助的人:488万
展开全部
使用unserialize()函数就可以了。
来自:求助得到的回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式