php – 从序列化数组MySQL中检索特定值
作者:互联网
数据库结构如下:
id|metaKey|metaValue
--+-------+-----------------------------------
55|product|a:8:{s:3:"sku";s:0:"";s:8:"products";a:3:{i:1;a:3:{s:6:"option";s:1:"1";s:5:"price";s:5:"14.95";s:9:"saleprice";s:0:"";}i:2;a:3:{s:6:"option";s:0:"";s:5:"price";s:0:"";s:9:"saleprice";s:0:"";}i:3;a:3:{s:6:"option";s:0:"";s:5:"price";s:0:"";s:9:"saleprice";s:0:"";}}s:11:"description";s:124:"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.";s:8:"shiprate";s:1:"A";s:8:"featured";s:2:"no";s:4:"sale";s:3:"yes";s:10:"cart_radio";s:1:"0";s:6:"optset";s:0:"";}
这是来自wordpress网站,我需要检索第一个“价格”值14.95什么是从存储在mysql中的序列化数组中检索特定值的最佳方法?
解决方法:
创建查询,从SQL读取数据,unserialize()metaValue并像数组一样访问它.如果你需要在mysql中提取它,你也可以尝试使用正则表达式,但这是一个不太好的方法.
标签:php,mysql,wordpress,denormalized 来源: https://codeday.me/bug/20190726/1541586.html