在 Laravel 5 中使用 Laravel Excel 实现 Excel/CSV 文件导入导出功能

http://laravel.com/

http://kejyun.github.io/Laravel-4-Docum ... roduction/
回覆文章
yehlu
Site Admin
文章: 3245
註冊時間: 2004-04-15 17:20:21
來自: CodeCharge Support Engineer

在 Laravel 5 中使用 Laravel Excel 实现 Excel/CSV 文件导入导出功能

文章 yehlu »

http://laravelacademy.org/post/2024.html

1.安裝

代碼: 選擇全部

composer require maatwebsite/excel ~2.0.0
2.設定 config/app.php

代碼: 選擇全部

//providers
Maatwebsite\Excel\ExcelServiceProvider::class,
//aliases
'Excel' => Maatwebsite\Excel\Facades\Excel::class,
3.產生設定檔 config/excel.php

代碼: 選擇全部

php artisan vendor:publish
4.產生 controller
app/Http/Controller/ExcelController.php

代碼: 選擇全部

php artisan make:controller ExcelController --plain
5.修改
app/Http/Controller/ExcelController.php

代碼: 選擇全部

<?php

namespace App\Http\Controllers;

use App\Http\Controllers\Controller;
use Excel;

class ExcelController extends Controller
{
    //Excel文件导出功能 By Laravel学院
    public function export()
    {
        $cellData = [
            ['学号', '姓名', '成绩'],
            ['10001', 'AAAAA', '99'],
            ['10002', 'BBBBB', '92'],
            ['10003', 'CCCCC', '95'],
            ['10004', 'DDDDD', '89'],
            ['10005', 'EEEEE', '96'],
        ];
        Excel::create('test', function ($excel) use ($cellData) {
            $excel->sheet('score', function ($sheet) use ($cellData) {
                $sheet->rows($cellData);
            });
        })->store('xls')->export('xls');
    }

    public function import()
    {
        $filePath = 'storage/exports/' . 'test.xls';
        echo $filePath;

        Excel::load($filePath, function ($reader) {
            $data = $reader->all();
            dd($data);
        });
    }
}
6.測試
http://homestead.app/excel/export
http://homestead.app/excel/import
yehlu
Site Admin
文章: 3245
註冊時間: 2004-04-15 17:20:21
來自: CodeCharge Support Engineer

Re: 在 Laravel 5 中使用 Laravel Excel 实现 Excel/CSV 文件导入导出功能

文章 yehlu »

https://laravel-china.org/topics/2029

进一步研究发现,表头有关的设置在扩展包的excel.php设置文件中。 找到这行

'to_ascii' => true, 改为false,这下就算是中文标题也OK。#

成功获取截图
如果不想要标题,excel.php中找到'heading' 把设置值改为false,得到无key的数组:


问题解决!!
回覆文章

回到「laravel」