blog-dyn

1,使用Composer安装依赖

在Laravel项目根目录下使用Composer安装依赖:

composer require maatwebsite/excel ~2.1

  ps:一定要加上~2.1!!!因为现在已经更新到3.0版本了,如果你不加的话,会安装最新的3.0版本!等运行时候就会报错,类似下面这样的报错

Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR)Call to undefined method Maatwebsite\Excel\Excel::create(),

  

2,安装后,修改设置

在config/app.php中注册服务提供者到providers数组:

Maatwebsite\Excel\ExcelServiceProvider::class,

在config/app.php中注册门面到aliases数组:

\'Excel\' => Maatwebsite\Excel\Facades\Excel::class,

  执行Artisan命令:

 php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"  

  

执行成功后会在config目录下生成文件excel.php。

修改生成的excel.php文件

大约是在431行,将\'to_ascii\' => true,改为

\'to_ascii\' => false,

  

<?php

namespace App\Http\Controllers;

use App\Http\Requests;

use Illuminate\Http\Request;

use App\Http\Controllers\Controller;

use Excel;

class ExcelController extends Controller

{

    public function export()

    {

        $cellData = [

            [\'id\',\'姓名\',\'年龄\'],

            [\'10001\',\'张三\',\'19\'],

            [\'10002\',\'李四\',\'22\'],

            [\'10003\',\'王五\',\'23\'],

            [\'10004\',\'赵六\',\'19\'],

            [\'10005\',\'猴七\',\'22\'],

        ];

        $name = iconv(\'UTF-8\', \'GBK\', \'成员信息\');

        Excel::create($name,function($excel) use ($cellData){

            $excel->sheet(\'score\', function($sheet) use ($cellData){

                $sheet->rows($cellData);

            });

        })->store(\'xls\')->export(\'xls\');

    }

    public function import(){

        $filePath = \'storage/exports/\'.iconv(\'UTF-8\', \'GBK\', \'成员信息\').\'.xls\';

        Excel::load($filePath, function($reader) {

            $data = $reader->all(); dump($data);

        });

        exit;

    }

}

  

分类:

技术点:

相关文章:

  • 2021-11-27
  • 2021-10-16
  • 2022-12-23
  • 2021-05-26
  • 2022-02-06
  • 2021-11-17
  • 2021-11-17
猜你喜欢
  • 2021-11-27
  • 2021-07-24
  • 2021-11-17
  • 2021-11-10
相关资源
相似解决方案