将$ _POST文本输入转换为多维数组

时间:2013-12-11 16:49:46

标签: php arrays forms input multidimensional-array

在我的网上商店,有一个包含大量文字输入的表格,代表了产品的数量。每种产品有三个字段:S尺寸,M尺寸和L尺寸的产品数量。

因此输入字段的名称必须包含产品ID和大小。这是以下形式的简化代码:

foreach ($productid as $id ) {
    echo '<input type="text" name="s'.$id.'" />';
    echo '<input type="text" name="m'.$id.'" />';
    echo '<input type="text" name="l'.$id.'" />';
}

我想处理通过$ _POST发送的此输入,并将所有输入字段的所有值保存到单个多维数组中。所需数组的格式如下:

  

$输入['32 '] [' M '] =' 20'   表示客户订购了20x尺寸为M的产品,为32。

我尝试这样做的所有尝试都失败了,因为我不知道如何循环$ _POST值以将它们转换为多维一维数组。

知道如何处理这样的输入并得到一个二维数组吗?

1 个答案:

答案 0 :(得分:1)

括号[]会生成一个数组,请尝试使用此print_r($_POST)并查看:

foreach ($productid as $id ) {
    echo '<input type="text" name="product['.$id.'][s]" />';
    echo '<input type="text" name="product['.$id.'][m]" />';
    echo '<input type="text" name="product['.$id.'][l]" />';
}
相关问题