0

我正在尝试从 mysql 中的数组中插入数据。我有多个数组。我一直在尝试按照这个思路做一些事情。

foreach ($titles as $title && $descriptions as $description) {
    mysql_query("INSERT INTO `stock` VALUES('', '$title', '$description')");
}

我希望 mysql 表看起来像这样。

item_id    title    description
_______________________________

1          title1   description1
2          title2   description2
...

现在我发现这行不通,是否有任何替代方法。我已经看到了执行此操作的 while 循环示例,但我很难理解它是如何工作的。提前感谢所有帮助。

4

2 回答 2

3

如果大小$titles相等,$descriptions并且您有顺序数组,则可以执行以下操作:

<?php
$titles = array(
    'foo',
    'bar'
);
$descriptions = array(
    'foo description',
    'bar description'
);

for($i = 0; $i < count($titles); $i++) {
    $title = $titles[$i];
    $description = $descriptions[$i];

    mysql_query("INSERT INTO `stock` VALUES('', '$title', '$description')");
}
于 2012-07-31T01:33:05.450 回答
3

您正在寻找一个MultipleIterator,它将轻松地遍历两个数组:

$iter = new MultipleIterator;
$iter->attachIterator( new ArrayIterator( $titles));
$iter->attachIterator( new ArrayIterator( $descriptions));

foreach( $iter as $data) {
    list( $title, $description) = $data;
    // Do your SQL insert with $title and $description
}
于 2012-07-31T01:34:41.710 回答