首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何以数组形式将数据存储在db中

如何以数组形式将数据存储在db中
EN

Stack Overflow用户
提问于 2013-09-13 06:51:13
回答 4查看 1.7K关注 0票数 2

我想以数组的形式将我的PHP值存储在db(mysql)中.

例如

代码语言:javascript
复制
$a=array{10,20,30,40}; 

我想将这个变量$a存储到db中,就像它如何使用索引在数组中存储一样。

之所以要这样做,是因为将来可能必须对数组值执行更新或删除操作。

我知道做这件事是可能的..。但我不知道如何实现这个..。

我搜索了这个话题,但没有得到正确的答案.

请建议我怎么做这件事..。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-09-13 06:52:17

为什么不在PHP中使用json并将其存储在数据库中。这是最好的方法。

数组将转换为字符串并存储。检索数据并使用json,然后根据需要开始工作。

示例:

代码语言:javascript
复制
<?php
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);

echo json_encode($arr);
?>

输出: {"a":1,"b":2,"c":3,"d":4,"e":5}

票数 2
EN

Stack Overflow用户

发布于 2013-09-13 07:01:43

您应该创建一个独立的来存储此类数据。

由2列、相应的记录ID和实际数据组成。

所以,你的记录看起来就像

代码语言:javascript
复制
rid value
1   10
1   20
1   30
1   40
2   10
2   40
...

这样,您就可以使用常规SQL例程对数组值执行更新或删除操作,以及根据数组值选择数据。

在现实世界中,而不是在PHP沙箱中,事情就是这样完成的。

这里所有的答案都是明显错误的。

票数 2
EN

Stack Overflow用户

发布于 2013-09-13 06:58:23

为此,我将使用串行化/非序列化。你可以这样使用它:

发送到MySQL

代码语言:javascript
复制
<?php
    $a = array{10,20,30,40};
    $a = serialize($a);
    // your code here to send it to the mysql
?>

从MySQL获得

代码语言:javascript
复制
<?php
    // your code here to collect it from mysql
    $a = unserialize($mysql->str);
?>

MySQL中的字段应该是TEXT或VARCHAR。

问候

BlackBonjour

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18779992

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档