我有这个页面会发布到我的php页面,帖子会像这样到达:
namexxxxxxx= <name>
stringidxxxxxxxx= <stringid>
“xxxxxx”是一个随机数,但两个键的编号相同。 那我在做什么:
$keys= array_keys($_POST);
$idNumber= substr($keys[0], 4);
$name= $_POST["name".$idNumber];
$stringId= $_POST["stringId".$idNumber];
这样我就可以轻松获得价值。现在是困难的部分(至少对我而言): 该帖子来自用户可以从列表中的大量项目中进行选择的页面,并且键具有数字的原因是用户可以选择他想要的多个项目。 所以,假设他选择了3个项目,所以我必须处理这样的帖子:
nameXXXXX: name1;
stringIdxxxx: stringId1;
nameXXXXX: name2;
stringIdxxxx: stringId2;
nameXXXXX: name2;
stringIdxxxx: stringId2;
那么我怎样才能获取post键以获取所有不同的数据并将其作为第一个处理? 谢谢!
答案 0 :(得分:2)
使用[]
表示法:
<input name="name[]" value="1" />
<input name="name[]" value="2" />
<input name="name[]" value="3" />
之后$_POST['name']
将成为一个数组,其中包含值[1, 2, 3]
。
您还可以定义索引:
<input name="name[200]" value="1" />
<input name="name[400]" value="2" />
<input name="name[700]" value="3" />
之后$_POST['name']
将成为一个数组,其中包含值[200 => 1, 400 => 2, 700 => 3]
。
答案 1 :(得分:1)
$keys= array_keys($_POST);
for($i=0;$i<count($keys);$i++)
{
$idNumber= substr($keys[$i], 4);
$name= $_POST["name".$idNumber];
$stringId= $_POST["stringId".$idNumber];
}
使用循环,您可以迭代所有数组元素并获取值。