【问题标题】:Converting $_POST text input into a multidimensional array将 $_POST 文本输入转换为多维数组
【发布时间】:2013-12-11 16:49:46
【问题描述】:

在我的在线商店中,有一个包含大量文本输入的表单,代表产品的数量。每个产品都有三个字段: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 发送的这个输入,并将所有输入字段的所有值保存到单个多维数组中。所需数组的格式如下:

$input['32']['m']='20' 表示客户订购了 20 倍 id 32 尺寸 M 的产品。

我所做的所有尝试都失败了,因为我不明白如何循环 $_POST 值以将它们变成一个多维数组。

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

【问题讨论】:

    标签: php arrays forms input multidimensional-array


    【解决方案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]" />';
    }
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-17
    • 2023-03-26
    • 2019-06-29
    • 2012-08-15
    相关资源
    最近更新 更多