我正在尝试从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循环的例子,但是我很难理解它是如何工作的。 所有帮助都提前感谢。
答案 0 :(得分: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')");
}
答案 1 :(得分: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
}