在php和mysql中根据数量插入行

时间:2015-04-06 18:44:09

标签: php mysql

我从一个表中返回的查询返回3-8行。我需要根据数量将这些行中的每一行转换为另一个表中的多行。

例如:

我有一个数组,它由设备类型,设备名称,数量和价格组成。

$devices = array
  (
  array("laptop","A-100",5,300),
  array("laptop","B-105",1,450),
  array("printer","CP21",3,125),
  array("monitor","vision21",1,100)
  );

将此插入到单独的数据库表中的最佳方法是什么,以便根据数量为每种设备类型创建多条记录?例如:

laptop     A-100      300
laptop     A-100      300
laptop     A-100      300
laptop     A-100      300
laptop     A-100      300
laptop     B-105      450
printer    CP-21      125
printer    CP-21      125
printer    CP-21      125
monitor    vision 21  100

我试图在网上找到可以为此提供方向的任何内容。我能找到的最接近的是运行foreach循环,但是我无法看到如何运行foreach循环并返回我需要的东西。

提前致谢。

1 个答案:

答案 0 :(得分:0)

这有点乱,但应该这样做

$devices = array
      (
      array("laptop","A-100",5,300),
      array("laptop","B-105",1,450),
      array("printer","CP21",3,125),
      array("monitor","vision21",1,100)
      );
    $array = array();
    foreach($devices as $key=>$device){

        for($i=0;$i<$device[2];$i++){
        $array[] = array($device);
        }
    }