【问题标题】:insert multi array to database in loop [closed]在循环中将多数组插入数据库[关闭]
【发布时间】:2017-02-15 03:47:08
【问题描述】:

我有以下数组

Array
(
  [user_id] => Array
    (
        [0] => 1
        [1] => 1
        [2] => 1
        [3] => 1
    )

  [menu_id] => Array
    (
        [0] => 1
        [1] => 1
        [2] => 1
        [3] => 1
    )

 [submenu_id] => Array
    (
        [0] => 1
        [1] => 2
        [2] => 3
        [3] => 4
    )

  )

我的 MySQL 数据库如下:

user_id | menu_id | submenu_id
        |         |  

我想将上面的数组插入到我的数据库中,如下所示:

user_id | menu_id | submenu_id
    1   |   1     |  1
    1   |   1     |  2
    1   |   1     |  3
    1   |   1     |  4

如何插入上面的数据?谢谢。

【问题讨论】:

  • 你先写一些代码。如果您有问题,请在此处提问,我们很乐意提供帮助。但是 SO != 免费编码资源
  • insert multi array to database in loop。永远不要插入循环。
  • 您有没有尝试过任何解决方法?例如一个 for 循环(嵌套一个)???
  • 提示:使用 Andrew 的评论和$arr['user_id'][0],$arr['menu_id'][0],$arr['submenu_id'][0],.......
  • @Andrew 为什么不,只是出于兴趣?

标签: php mysql arrays multidimensional-array insert


【解决方案1】:

因为您对每个数组都有相同的索引,所以您想从第一个数组(user_id)和第二个数组(menu_id)中获取第一个值,依此类推,并将其添加到 mysql 中的一行。

你需要这样的东西:

foreach($data['user_id'] as $key => $user_id){
    //You have $user_id
    $menu_id = $data['menu_id'][$key];
    $submenu_id = $data['submenu_id'][$key];
    //All of this 3 variables you need now to insert to mysql. Try it and let me know WITH code if something is not working like this.
}

【讨论】:

  • 你可能太聪明了,但让 OP 先尝试一下,然后想出一个解决方案。
  • 这行得通,谢谢。 :)
猜你喜欢
  • 2013-03-09
  • 2015-12-25
  • 1970-01-01
  • 2019-10-18
  • 1970-01-01
  • 2012-08-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多