我想将数组存储到MYSQL列中,因此我将MYSQL版本升级到5.7。我创建了一个表,其中列为JSON类型。
我需要的是,我将不得不在此列中存储一个数组。
因此我做的是 首先。
我希望将$ my_array以json格式存储在数据库中,
$my_array = ["a","b","c"];
我将其存储在数据库列中,可以说alphabets
,方法是使用json_encode($my_array)
将其转换为JSON。
$words_samples = "hello man!";
$my_array = ["a","b","c"];
$my_array = json_encode($my_array);
我正在使用Codeigniter,所以我要编写我正在使用的SQL查询。
INSERT INTO english ('alphabets', 'words_samples')
VALUES ($my_array, $words_samples);
插入成功,数据库列输出为["a","b","c"]
现在,我需要检索并显示在json中的alphabets
和words_sample
数据。
代码:
SELECT * from english;
在我的PHP中,
echo json_decode($data).
现在alphabets
数据显示为[\"a\",\"b\",\"c\"]
,而不是["a","b","c"]
我看到,由于alphabets
列已经使用JSON编码,因此再次将其转换为JSON会提供其他输出。
如何防止仅对alphabets
数据进行双重分析?