如何创建具有双GET变量的数组

时间:2011-06-29 12:34:44

标签: php jquery arrays forms get

我有一个带有一些复选框的表单。如果我激活一个ceckbox,jquery会将带有.serialize()函数的数据通过ajax发送到php文件。问题是,jquery发送一些双参数。这是查询:

area=26-50&area=51-75&area=76-100&area=100&std=1&std=3

我如何创建这样的数组:

array( 'area' => array(0 => '26-50',1 => '51-75',2 => '76-100'), std => array(0 => 1,1 => 3) )

PHP用新的变量覆盖最后一个变量......

感谢您的帮助!

问候

2 个答案:

答案 0 :(得分:10)

[]表示法可以以表格形式传输数组数据。

将表单中的复选框命名为:

<input name="area[]" type="checkbox" value="51-75">

这应该构建一个包含所有选中复选框的数组。

答案 1 :(得分:2)

如果密钥名称附加了[]

,PHP可以支持此功能
area[]=26-50&area[]=51-75&area[]=76-100&area[]=100&std[]=1&std[]=3
/*
Array
(
    [area] => Array
        (
            [0] => 26-50
            [1] => 51-75
            [2] => 76-100
            [3] => 100
        )

    [std] => Array
        (
            [0] => 1
            [1] => 3
        )

)
*/