在php中将类似abc[0]的HTML元素名称转换为数组
试图将传入的表单值从Ajax转换为Php数组,但其行为似乎类似于字符串 使用下面的reg ex,如果我手头有输入名称,我可能能够通过循环手动替换键,但我认为这不是最好的方法,请建议在php中将类似abc[0]的HTML元素名称转换为数组,php,Php,试图将传入的表单值从Ajax转换为Php数组,但其行为似乎类似于字符串 使用下面的reg ex,如果我手头有输入名称,我可能能够通过循环手动替换键,但我认为这不是最好的方法,请建议 preg_match('/^A\[\d+\]/', $key); preg_match('/^B\[\d+\]/', $key); 我的表格是这样的 <input type="text" id="c[0]" name="c[0]" value=""> 我想将传入值转换为如下所示的php数组 A[0]
preg_match('/^A\[\d+\]/', $key);
preg_match('/^B\[\d+\]/', $key);
我的表格是这样的
<input type="text" id="c[0]" name="c[0]" value="">
我想将传入值转换为如下所示的php数组
A[0] = Test1
A[1] = Test1
B[0] = Test2
B[1] = Test2
正在使用json_encode将表单元素发送到Ajax,因此必须在传入时解码,然后parse_str完成工作,将字符串转换为数组,无法避免foreach循环
$p2 = json_decode($_GET['form_ele1'], true);
$p4 = array();
foreach($p2 as $key => $value){
$tkey = $key;
parse_str($tkey, $arr);
foreach($arr as $key2 => $value2){
$p4[$key2][key($value2)] = $value;
}
}
$p2 = $p4;
显示您使用的ajax代码。无需手动执行此操作。
$p2 = json_decode($_GET['form_ele1'], true);
$p4 = array();
foreach($p2 as $key => $value){
$tkey = $key;
parse_str($tkey, $arr);
foreach($arr as $key2 => $value2){
$p4[$key2][key($value2)] = $value;
}
}
$p2 = $p4;