从多维PHP数组填充MySql表

时间:2014-11-11 19:20:47

标签: php mysql arrays multidimensional-array

所以我有一个多维数组$fillarray,其长度超过1000行$fillarray[0] - $fillarray[1000],每个元素有22个部分。我不关心任何分支图上的[0] [0]。

有几篇关于从MySQL表中提取并填充数组的帖子,我正试图采用其他方式。

我尝试了几种方法。任何帮助将不胜感激。

for($i = 1; $i <= $cnt; ++$i) {
    if($i != 1)
        $values .= ',(NULL,';
    else
        $values = '(NULL,';
    for($t = 1; $t <= 21; ++$t){
        if($t != 21)
            $value .= "'".$fillarray[$i][$t]."',";
        else
            $values .= "'".$fillarray[$i][$t]."')";
        //echo $fillarray[$i][$t]."<br>";
    if($i != $start)
        $values .= ",";
    }
    mysql_query("insert into `data` VALUES(NULL, '$fillarray[$i][1]' , '$fillarray[$i][2]', '$fillarray[$i][3]', '$fillarray[$i][4]', '$fillarray[$i][5]','$fillarray[$i][6]','$fillarray[$i][7]','$fillarray[$i][8]','$fillarray[$i][9]','$fillarray[$i][10]','$fillarray[$i][11]','$fillarray[$i][12]','$fillarray[$i][13]','$fillarray[$i][14]','$fillarray[$i][15]','$fillarray[$i][16]','$fillarray[$i][17]','$fillarray[$i][18]','$fillarray[$i][19]','$fillarray[$i][20]','$fillarray[$i][21]')") or die(mysql_error());

}

2 个答案:

答案 0 :(得分:0)

尝试将foreach循环用于多维arra ...

foreach($value as $values){

 echo $values;
}

foreach($values as $key=>$values){

echo $key=>$values;


} 

答案 1 :(得分:0)

无法对其进行测试,但是这样会有用吗?

foreach ($fillarray as $row) {
    $query = "INSERT INTO `data` VALUES (" . implode(',', array_map('mysql_real_escape_string', array_unshift($row, NULL))) . ")";
}

此外,inb4&#34; Don't use mysql_*, use PDO/mysqli&#34;!