为了账号安全,请及时绑定邮箱和手机立即绑定

将像 abc[0] 这样的 HTML 元素名称转换为 php 中的数组

将像 abc[0] 这样的 HTML 元素名称转换为 php 中的数组

PHP
慕丝7291255 2022-01-02 20:19:34
试图将传入的表单值从 Ajax 转换为 Php 数组,但它似乎表现得像字符串使用下面的正则表达式,如果我手头有输入名称,我可以通过循环手动替换键,但我认为这不是最好的方法,请提出建议preg_match('/^A\[\d+\]/', $key);preg_match('/^B\[\d+\]/', $key);我的表格是这样的<input type="text" id="c[0]" name="c[0]" value="">这是我从 Ajax 到 PHP 的传入表单值的样子Array(    [A[0]] => Test1    [B[0]] => Test2    [C[0]] => Test3    [D1[0]] => Test4    [A[1]] => Test1    [B[1]] => Test2    [C[1]] => Test3    [D1[1]] => Test4)我想将传入的值转换为如下所示的 php 数组A[0] = Test1A[1] = Test1B[0] = Test2B[1] = Test2
查看完整描述

1 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

使用 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;


查看完整回答
反对 回复 2022-01-02
  • 1 回答
  • 0 关注
  • 145 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号