php - 如何从 php post 创建多维数组?
问题描述
如何从 php post 创建多维和关联数组?
$html .= '<td><input id="location" name="location['.$i.']" type="text" class="form-control form-control-sm form-control-solid" placeholder="result data (kosongkan jika tidak diperlukan)" value=""/></td>';
$html .= '<td><input id="msg" name="msg['.$i.']" type="text" class="form-control form-control-sm form-control-solid" value="' . htmlspecialchars($key) . '"/></td>';
$html .= '<td><input id="order_id" name="order_id['.$i.']" type="text" class="form-control form-control-sm form-control-solid" value="' . htmlspecialchars($value) . '"/></td>';
我想做这样的数组输出:
[$_POST['location'] => [$_POST['msg']=>$_POST['order_id']]]
解决方案
你犯了一些简单的错误
您可以在数组上进行 foreach,然后您不在乎它有多大或多小。$_POST 中使用的变量也有错误。
使用该foreach( $arr as $index => $value)
语法可以为您正在处理的数组提供索引,如果所有 3 个数组的大小始终相同,则可以使用它来引用其他数组。
$arr = [];
foreach ( $_POST['location'] as $i => $locn ) {
$arr[$locn][] = [ $_POST['msg'][$i] => $_POST['order_id'][$i] ];
}
它有助于调试你的代码,如果你
例如,在打开 PHP 标记后立即进行测试时,将错误报告添加到文件的顶部。即使您在配置为 LIVE 的服务器上进行开发,您现在也会看到任何错误。
<?php error_reporting(E_ALL); ini_set('display_errors', 1);
推荐阅读
- flutter - 使用 TextField 控制器 Flutter HTTP POST 请求
- conan - 从消费者添加到 conan virtualenv
- php - 在 Laravel Eloquent ORM 中存储元组数组
- javascript - 使用 jQuery 将滑块数字转换为缩写
- vb.net - 如何通过单击 Vb.net 中的控件来引发面板的单击事件
- django - Django 保存大文件
- android - 如何将 ProgressBar 放在 EditText 内并将栏保持在其中?
- powershell - 使用“4”参数调用“TogglePoolOutOfService”的异常:“无法理解 SOAP 标头操作。”
- html - /search/ 处的 MultiValueDictKeyError,为什么会出现此错误?
- batch-file - (批量)直接在if语句中减去值?