@Chiang
2020-08-17T22:16:46.000000Z
字数 1391
阅读 580
2020-08
工作总结
通过数组传递表单数据,可以保存数据之间的业务属性关系,比如有很多Student,每隔Student都有姓名、年龄、性别、爱好等表单信息。提交表单后还需要针对每个student进行处理或者保存。这样肯定需要为每个student的这些属性表单建立起关联关系,一种方式是根据属性表单的name上加特殊标记进行识别,但是数组传递表单就能使表单数据更结构化。
<input type="hidden" name="msginfo[name][]" value="张三"/>
<input type="hidden" name="msginfo[phonenum][]" value="111111111"/>
<input type="hidden" name="msginfo[name][]" value="李四"/>
<input type="hidden" name="msginfo[phonenum][]" value="222222222"/>
$msgInfos = $_POST['msginfo'];
$phoneNums = $msgInfos['name']; // 为array(-=>张三,1=>李四)
$phoneNums = $msgInfos['phonenum']; // 为array(0=>111111111,1=>222222222)
<form method="post">
zhangsan <input type="text" name="user[zhangsan]" value="0" /><br />
lisi <input type="text" name="user[lisi]" value="1" /><br />
wangwu <input type="text" name="user[wangwu]" value="2" /><br />
zhaoliu <input type="text" name="user[zhaoliu]" value="3" /><br />
<input type="submit" name="submit" value="提交" />
</form>
if(isset($_POST['submit'])){
$users = $_POST['user'];
foreach($users as $key=>$val){
echo 'user ',$key,' = ',$val,'<br />';
}
}
<form method="post">
<?php for($i=0;$i<10;$i++): ?>
<input type="checkbox" name="interests[]" value="<?= $i; ?>">test<?=$i?><br>
<?php endif; ?>
<input type="submit">
</form>
<?php
if(isset($_POST)){
foreach($_POST as $key => $val){
if(is_array($val)){
foreach($val as $v2){
echo "{$v2}<br>";
}
}
}
}
?>