首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数组元素插入数据库

问将数组元素插入数据库
EN

Stack Overflow用户
提问于 2010-12-23 04:05:10
回答 2查看 423关注 0票数 0

我希望将每个数组的每个元素存储到mysql数据库字段中。我该怎么做呢?

代码语言:javascript
复制
<?php

// primarily a method for storing data
// arrays are counted from 0

$hosts = array(
array("ronmexico.kainalopallo.com/", "beforename=$F_firstname%20$F_lastname&gender=$F_gender",
"Your Ron Mexico Name is ",
"/the ultimate disguise, is ([^<]+)<\/b><\/u>/s"),<u><b>([^<]+)<\/b><\/u>/s"),

array("rumandmonkey.com/widgets/toys/mormon/index.php",
"gender=$F_gender&firstname=$F_firstname&surname=$F_lastname",
"Your Mormon Name is ","/
My <p>My Mormon name is
<b>([^<]+)<\/b>!<br \/>/s")
);

return $hosts;

?>
EN

回答 2

Stack Overflow用户

发布于 2010-12-23 04:08:24

您可以serialize该数组并将序列化的数组插入到数据库中。然后,我们将数据从数据库中提取出来,然后运行unserialize,它将转换回一个PHP数组。

更多信息:PHP: serialize

票数 0
EN

Stack Overflow用户

发布于 2010-12-23 04:11:05

如果您已经知道数组的键-值对和MySQL表的列之间的映射,那么可以尝试使用数组构建MySQL语句:

代码语言:javascript
复制
$sql = "insert into $table ";
foreach($arr as $key => $value) {
    $sql .= "set $key = $value, ";
}
$sql .= ";";

如果您有像array( array(1,2,3), array(4,5,6), array(7,8,9) );这样的数组结构

你知道for($arr as $key => $val)会给你像[1] => array(1,2,3)这样的东西

虽然我不认为你可以使用这种方法来保存任意深度的数组。如果你事先不知道数组结构有多深,或者它与数据库的关系如何,那么你可能应该保存一个序列化版本,就像mririgo说的那样。

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

https://stackoverflow.com/questions/4513228

复制
相关文章

相似问题

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