在许多场景中,我们会遇到行数和预定义列数不同的表单。用户可以根据需要自由添加行。了解如何将这些动态输入捕获为可用格式至关重要。
考虑一个包含产品属性列的表单,例如顶部直径、底部直径、面料、颜色和数量。虽然列数保持不变,但行数是动态的。
为了适应动态的行数,我们使用数组索引。例如:
<input name="topdiameter[0]" type="text">
这会生成如下所示的 HTML:
<input name="topdiameter[0]" type="text"> 检索输入数据
提交表单后,可以通过以下方式访问输入数据$_POST 超全局变量。它显示为数组的数组:
$_POST['topdiameter'] = array('first value', 'second value'); $_POST['bottomdiameter'] = array('first value', 'second value');使用多维数组
使用单个二维数组比使用多个一维数组更有效。为此,我们修改表单名称格式:
name="diameters[0][top]" name="diameters[0][bottom]" name="diameters[1][top]" name="diameters[1][bottom]" ...使用此修改后的格式,我们现在可以轻松遍历值:
if (isset($_POST['diameters'])) { echo '<table>'; foreach ($_POST['diameters'] as $diam) { // Here, $diam['top'] and $diam['bottom'] are accessible echo '<tr>'; echo ' <td>', $diam['top'], '</td>'; echo ' <td>', $diam['bottom'], '</td>'; echo '</tr>'; } echo '</table>'; }以上是如何在PHP中通过POST高效提交和检索多维数组?的详细内容。更多信息请关注PHP中文网其他相关文章!
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn