2014-05-10 56 views
-1

请问我有一个带有不同密钥的html表单数组name='qt[]',name='price[]',name='desc[]'Foreach多个dimentianal阵列关联密钥

所以我想foreach这个数组,并把值放在一个HTML表格,我该怎么办?

loop 
<tr> 
    <td><?php echo qt; ?></td> 
    <td><?php echo price; ?></td> 
    <td><?php echo desc; ?></td> 
</tr> 
end loop 

这是我的代码:

foreach ($items['quantite'] as $qt) { 
    foreach ($items['description'] as $desc) { 
     foreach ($items['price'] as $price) { 

但是,给我重复。

谢谢!

+0

为此使用'for'循环。 – OPatel

+0

在PHP中添加示例数据,并显示当前结果和您期望的结果 –

+0

数组的格式是什么? – Luke

回答

0

当然,你嵌套循环时,你不会得到你想要的。

可以使用$key => $value语法遍历数组的一个,然后在循环中使用的键从其他阵列访问值。 (当然,如果所有阵列具有完全相同的结构,其将只工作。)...但:

我有一个HTML表单阵列用不同的密钥名称=“QT []”,名字=“价格[] ”,名称= '递减[]'

我建议你而改变 - 使用qtpricedesc作为指标摆在首位。

name="product[0][qt]", name="product[0][price]", name="product[0][desc]" 
name="product[1][qt]", name="product[1][price]", name="product[1][desc]" 

这会给你$ _POST里的数组product(假设你的表单使用POST),你可以简单地遍历 - 和循环内,你就可以访问该条目qtpricedesc每个产品。

这样做的好处是可以将产品按照产品分组在一起,而对于目前的方法,如果其中一个值丢失(如果其中一个输入字段是复选框,则不会提交如果未检查),整个系统将崩溃,您无法再将正确的值与正确的产品匹配。

+0

我使用jquery添加输入字段这种方法会很难 – user3066977

+0

不是真的,如果你做得对......而另一种方法是获取内置字段之间没有“连接”的数据,那就更糟了。 – CBroe

+0

我认为是困难的,因为我克隆输入字段,当我点击一个添加链接,我追加输入的拳头这样的,所以在这种情况下,我不能添加索引键[0],[1],[2 ]我觉得很难 – user3066977