在获得具有此结果的值后,我已将值存储为数据库中的json对象
'["{ zone :1, cat_id : 1, subcat : 2}","{ zone :1, cat_id : 2, subcat : 2}","{
zone :1, cat_id : 2, subcat : 3}"]'
然后我用json_decode将它转换为数组然后我得到了这个结果
"{ zone :1, cat_id : 1, subcat : 2}"
但我无法在php
中获取zone,cat_id和subcat的值所以可以通过任何方式获得这个值,我也有很多循环记录。所以我想要一些有效的方法来获得这个值。
答案 0 :(得分:0)
实际上,您拥有的序列化数组是一个表示JSON对象的字符串数组。
因此,您需要$values = '["{ zone :1, cat_id : 1, subcat : 2}","{ zone :1, cat_id : 2, subcat : 2}","{
zone :1, cat_id : 2, subcat : 3}"]';
$decodedValues = json_decode($values);
$firstValue = json_decode($decodedValues[0]);
数组和数组的每个值。
"
你应该有解码的值:)
OR(如果您可以编辑您使用的字符串的格式)
您可以更改值的初始格式,因为它是一个简单的对象数组。如果你想(并且当然可以)这样做,你只需要删除序列化数组中的'["{ zone: 1 ...}"]'
。
而不仅仅是'[{"zone": 1 ...}]'
gem 'mysql'