如何在数据库中插入数组的所有键

时间:2015-06-18 20:33:39

标签: php mysql arrays

我有一个数组,它的键数总是除以4是整数(在oder中,mod是0,例如在下面的例子中:[12 , 4] {div = 3 | mod = 0}

我的数组是这样的:

$arr = Array
(
    [0] =>  'zero',
    [1] =>  'one',
    [2] =>  'two',
    [3] =>  'three',
    [4] =>  'four',
    [5] =>  'five',
    [6] =>  'six',
    [7] =>  'seven',
    [8] =>  'eight',
    [9] =>  'nine',
    [10] =>  'ten',
    [11] =>  'eleven'
);

现在我有一个包含4列的表,我想把我的数组的所有键放到我的表中。实际上我想在1行表中插入数组的每4个键。像这样的东西:

// mytable

+---------+---------+---------+---------+
|  col1   |  col2   |  col3   |  col4   |
|---------------------------------------| 
|  zero   |   one   |   two   |  three  |
|  four   |   five  |   six   |  seven  |
|  eight  |   nine  |   ten   |  eleven |
+---------+---------+---------+---------+

我在询问之前尝试过,并且我总结说我应该使用嵌套的for(){}。不幸的是,实际上我的阵列有1000个键,因此我无法手动完成。我只知道第二个for(){}

for($i; I dont know the condition; $i++){
    for ($j=0;$j<=3;$j++){ // selects 4 keys
        $arr[$j];
        }
     INSERT INTO mytable VALUES ($arr[0],$arr[1],$arr[2],$arr[3]);  // mysql codes 
    }

我知道我的代码是错的,如果你能帮助我,请。感谢

1 个答案:

答案 0 :(得分:0)

实际上你不需要嵌套。一个就够了:

for ($j=0; $j<=count($array); $j+= ){ // selects 4 keys
    INSERT INTO mytable VALUES ($arr[$j],$arr[$j+1],$arr[$j+2],$arr[$j+3]);  // mysql codes 
}

$ j + = 4;与$ j = $ j + 4相同;它增加了4点。

希望它有所帮助:)