亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用多維數組導出 CSV 格式

使用多維數組導出 CSV 格式

PHP
一只萌萌小番薯 2022-07-16 17:20:19
我正在嘗試使用以下代碼將多維數組導出為 CSV 格式,但我遇到的錯誤很少.. 下面是數組 "orders": [            {                "id": 1,                "first_name": “test",                "last_name": “test",                "email": “[email protected]",                “Order1": [                    {                      "order_id": 1,                        "first_name": “test",                        "last_name": “test",                        “Amount": 27.77                    }                ],                "payment": {                    "id": 1,                    "trans_id": 12345,                    "last_four": “1111",                    "total_paid": 27.77                }            },            {                "id": 2,                "first_name": “test1",                "last_name": “test1",                "email": “[email protected]",                “Order1": [                    {                      "order_id": 2,                        "first_name": “test1",                        "last_name": “test1",                        “Amount": 28.77                    }                ],                "payment": {                    "id": 1,                    "trans_id": 12346,                    "last_four": “2222",                    "total_paid": 28.77                }             }           ]我期待的 csv 文件的輸出1 test test [email protected] 1 test test 27.77 12345 1111 27.772 test1 test1 [email protected] 2 test1 test1 28.77 12346 2222 28.77我想將所有數據轉換為 csv 文件。問題是,由于所有子數組,我似乎無法讓它工作。header('Content-Type: text/csv;');                header('Content-Disposition: attachment; filename=order.csv');                header("Pragma: no-cache");                header("Expires: 0");                $fh = fopen('php://output', 'w');                fputcsv($fh, array_keys($orders[0]));foreach ($orders as $order) {    $result = [];    array_walk_recursive($order, function($item) use (&$result) {        $result[] = $item;    });    fputcsv($fh, $result);}我對此有錯誤
查看完整描述

1 回答

?
慕田峪9158850

TA貢獻1794條經驗 獲得超7個贊

$orders = $result->data->orders;

                if(empty($orders))

                {

                    $request->session()->flash('message', 'No records');

                    return back();

                }

                header('Content-Type: text/csv;');

                header('Content-Disposition: attachment; filename=orders.csv');

                header("Pragma: no-cache");

                header("Expires: 0");

                $fh = fopen('php://output', 'w');

                fputcsv($fh, array('Order Id','First Name','Last Name','Email','Amount','Transaction Id','Last Four','Total Paid'));

                foreach ($orders as $order) {

                    $order_data = array($order->id);

                    array_push($order_data, $order->first_name);

                    array_push($order_data, $order->last_name);

                    array_push($order_data, $order->email);

                        foreach ($order->order1 as $order) {

                            $order1 = array($order);

                            for($i = 0; $i < count($order1); $i++) {

                           array_push($order_data,$order1[$i]->amount);


                            }

                    array_push($order_data, $order->payment->trans_id);

                    array_push($order_data, $order->payment->last_four);

                    array_push($order_data, $order->payment->total_paid);

                        }

                    }

                    fputcsv($fh, $order_data);

                }

此代碼解決了我的問題


查看完整回答
反對 回復 2022-07-16
  • 1 回答
  • 0 關注
  • 126 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號