PHP 和 JAVASCRIPT 的转换 记录

需求:sql语句中传来的数组格式为data:{内容},需要将其改为

            "shop_supplier_id": 10,

            "avatarUrl": "https",

            "data": [

                {内容}

            ]
并把改变的代码从前台JAVASCRIPT转至后台PHP

JAVASCRIPT:

const result = this.list.reduce((acc, order) => {
                            // 查找是否已经存在该 status
                            const group = acc.find(item => item.shop_supplier_id === order.shop_supplier_id);
                            if (group) {
                                // 如果存在,推入该 order 到对应的 data 数组
                                group.data.push(order);
                            } else {
                                // 如果不存在,创建一个新组并添加该 order
                                acc.push({
                                    shop_supplier_id: order.shop_supplier_id,
                                    data: [order]
                                });
                            }
                            return acc;
                        }, []);

                        this.list =  result;

PHP:

$result1 = array_reduce($result, function ($acc, $order) {

            $found = false;

            foreach ($acc as &$group) {

                if ($group['shop_supplier_id'] === $order['shop_supplier_id']) {

                    $group['data'][] = $order;

                    $found = true;

                    break;

                }

            }

            if (!$found) {

                $acc[] = [

                    'shop_supplier_id' => $order['shop_supplier_id'],

                    'avatarUrl' => $order['avatarUrl'],

                    'data' => [$order]

                ];

            }

            return $acc;

        }, []);



 

        // 返回结果

        return $this->renderSuccess('', $result1);

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值