如何在php中的foreach循环中使用两个或三个数组来插入数据库

如何在php中的foreach循环中使用两个或三个数组来插入数据库,php,arrays,explode,implode,Php,Arrays,Explode,Implode,如何使用foreach在数据库行中插入多个数组 一个数组没有问题,但我的问题是使用两个或更多数组 我的php代码: $checkBox1 = implode(',', $_POST['goinput1']); $checkBox2 = implode(',', $_POST['goinput3']); $mark3=explode(',', $checkBox1); $mark4=explode(',', $checkBox2); foreach($mark3 as $out3) {

如何使用foreach在数据库行中插入多个数组

一个数组没有问题,但我的问题是使用两个或更多数组

我的php代码:

$checkBox1 = implode(',', $_POST['goinput1']);
$checkBox2 = implode(',', $_POST['goinput3']);
$mark3=explode(',', $checkBox1);
$mark4=explode(',', $checkBox2);
foreach($mark3 as $out3) 
{
    $sql_sub = "INSERT INTO sub_forms
                        (bord_mizban,bord_mihman) 
                VALUES ('$out3','$out4')";      
    if ($conn->query($sql_sub) === TRUE) {  

    } else {

    }   

}
** 我希望out 4变量与out 3变量一起插入数据库
**

使用索引(
$key
)在
$mark3
上迭代,并在同一个键下获取元素:

foreach($mark3 as $key => $out3) 
{
    echo $out3 . '; ' . $mark4[$key];
}
简单的回答是:

foreach($mark3 as $key => $out3) {
    $values = "'$out3."','".$mark4[$key]."'"
    $sql_sub = "INSERT INTO sub_forms
                        (bord_mizban,bord_mihman) 
                VALUES ($values)";      
    if ($conn->query($sql_sub) === TRUE) {  

    } else {

    }   

}
这会解决你的实际问题。但是,有一种更好的方法可以做到这一点,只需要一个sql查询

foreach($mark3 as $key => $out3) {
    $valuesArray[] = "('$out3."','".$mark4[$key]."')" // this makes an array of your value sets.
}
$values = join(", ", $valuesArray) // this joins your array to one string, with each entry separated by a comma.
$sql_sub = "INSERT INTO sub_forms
                        (bord_mizban,bord_mihman) 
                VALUES $values";      
    if ($conn->query($sql_sub) === TRUE) {  

    } else {

    }   

请澄清,我不明白你想说什么achieve@Rust我想在foreach循环中使用两个或三个数组$mark3和$mark4之间的关系是什么?它们是否具有相同的长度(它们是否包含相同数量的元素)?@dearsina没有关系,它们是完全分开的。客队和东道主队的名字都是以stringsCan的形式出现的,你能解释更多吗?此代码不起作用或我的知识不足。以下是一个示例代码,我不知道您的
$mark3
$mark4
值。