php - 插入多个数组

标签 php mysql arrays

我试图从输入中获取所有值并将它们插入在一起,因此对于第一个数组中的每个值#1,在第二个和第三个数组中插入值#1。看起来是这样的:

$lines = explode(PHP_EOL, $_POST['links']);
$keywords = explode(PHP_EOL, $_POST['keywords']);
$violationtypes = explode(PHP_EOL, $_POST['keywords']);

这些输入是常规的,但它们可能是 1 或 500,我真的不知道。我曾经在有这样一个输入时处理这个问题:

foreach($lines as $line)
    {
if (!empty($line))
    {
        if (false === strpos($line, '://')) 
        {
           $line = 'http://' . $line;
        }
mysql_query("INSERT INTO links (ClientEmail,Links) VALUES ('$Emailvalue', '$line')");
}
}

但是,我无法用 3 个数组来拉取这个。有更好的办法吗?

PS 检查空行是为了不将空值添加到数据库中,另一个是检查 http:// 是否存在,如果不存在则添加它。该检查仅针对 $lines,其他输入不需要任何检查

最佳答案

使用一个数组中的索引来获取其他数组中的相应元素:

foreach ($lines as $i => $line) {
    if (!empty($line)) {
        $keyword = $keywords[$i];
        $violation = $violationtypes[$i];
        // Now insert $line, $keyword, and $violation into DB
    }
}

关于php - 插入多个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19204243/

相关文章:

php - 如何将 Google 云端硬盘图片嵌入网页?

php - json_decode 返回 json 字符串而不是数组

mysql - 查询运行时间太长

php - 如何从php mysql中的输入框更新数组

php - 在多维数组上使用 array_intersect

javascript - 将数组值放入多个变量 Javascript

php - 具有负向后查找和未知中段 PHP 的正则表达式

mysql - 给定行的所有列的平均值(没有明确写入列名)?数据库

arrays - 修改 std::array 所有元素的优雅而有效的方法

javascript - 如何通过ajax增加/减少PHP变量值并重新加载函数