如何从存储为对象的字符串中获取值

时间:2017-05-29 13:05:03

标签: javascript php ajax mysqli

在获得具有此结果的值后,我已将值存储为数据库中的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的值

所以可以通过任何方式获得这个值,我也有很多循环记录。所以我想要一些有效的方法来获得这个值。

1 个答案:

答案 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'