laravel5.5 excel扩展包的安装和使用
(文章引用来源 http://www.cnblogs.com/djwhome/p/9322112.html 有自己的补充用于记录)
(在此次项目中,本人亲自尝试,标题中文无论如何转换(GBK、gb2312、utf-8)都不能正常读取。包括.xsl 文件中存在中文也不能正常读取。所以本人放弃了.xsl中的一切中文)
在项目开发中 最常用的就是把数据导出成excel的文件报表了
然而新下的项目中啥也没有;没有excel的扩展
会报这个错误
然后你需要通过composer安装这个依赖
学习源头:https://www.jianshu.com/p/4a2457efbf91
excel官方文档:http://laravelacademy.org/post/2024.html
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,
3、测试Excel文件
创建一个控制器ExcelController.php:
php artisan make:controller ExcelController
然后在routes.php中定义相关路由:
Route::get('excel/export','ExcelController@export');
Route::get('excel/import','ExcelController@import');
然后实现导出、导入功能:
<?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','name','number'],
['10001','AAAAA','99'],
['10002','BBBBB','92'],
['10003','CCCCC','95'],
['10004','DDDDD','89'],
['10005','EEEEE','96'],];
Excel::create('users',function($excel) use ($cellData){
$excel->sheet('score', function($sheet) use ($cellData){
$sheet->rows($cellData);
});
})->store('xls')->export('xls');
}
public function import(){
$filePath = 'storage/exports/users.xls';
Excel::load($filePath, function($reader) {
$data = $reader->all(); dd($data);
});
exit;
}
}
如果你要导出csv或者xlsx文件,只需将export方法中的参数改成csv或xlsx。
store方法,将该Excel文件保存到服务器上,文件默认保存到storage/exports目录下,iconv()是为了防止文件名中文乱码。
访问 http://youdemain/excel/export
访问 http://youdemain/excel/import
laravel5.5 excel扩展包的安装和使用的更多相关文章
- VSCode扩展包离线安装
下载离线包 下载地址:https://marketplace.visualstudio.com/vscode 安装离线包
- 如何正确使用 Composer 安装 Laravel 扩展包
我们经常要往现有的项目中添加扩展包,有时候因为文档的错误引导,如下图来自 这个文档 的: composer update 这个命令在我们现在的逻辑中,可能会对项目造成巨大伤害. 因为 composer ...
- laravel 安装 Laravel 扩展包
问题说明 我们经常要往现有的项目中添加扩展包,有时候因为文档的错误引导,如下图来自这个文档 的: composer update 这个命令在我们现在的逻辑中,可能会对项目造成巨大伤害. 因为 comp ...
- 正确的 Composer 扩展包安装方法
问题说明 我们经常要往现有的项目中添加扩展包,有时候因为文档的错误引导,如下图来自 这个文档 的: composer update 这个命令在我们现在的逻辑中,可能会对项目造成巨大伤害. 因为 com ...
- 【转】正确的 Composer 扩展包安装方法
简单解释 composer install - 如有 composer.lock 文件,直接安装,否则从 composer.json 安装最新扩展包和依赖: composer update - 从 c ...
- Composer 扩展包安装方法
问题说明 我们经常要往现有的项目中添加扩展包,有时候因为文档的错误引导,如下图来自 这个文档 的: composer update 这个命令在我们现在的逻辑中,可能会对项目造成巨大伤害. 因为 com ...
- VirtualBox扩展包安装教程|VirtualBox扩展增强包怎么安装
VirtualBox是一款功能强大的免费虚拟机软件,一般我们安装VirtualBox后要安装扩展增强包,VirtualBox扩展包包含USB2.0和USB3.0控制等支持功能,如果没有装,在使用过程中 ...
- 关于Pycharm安装扩展包的方法
Python中第三方的库(library).模块(module),包(package)的安装方法以及ImportError: No module named 1.pip install .... 一般 ...
- Python及bs4、lxml、numpy模块包的安装
http://blog.csdn.net/tiantiancsdn/article/details/51046490(转载) Python及bs4.lxml.numpy模块包的安装 Python 的安 ...
随机推荐
- postman加密短信验证码
问题描述:有一个绑定手机号的接口需要向手机发送验证码,接口会将验证码进行base64编码加密,加密后的值赋值给code参数,其他接口请求均需要code参数,如何带上该参数 解决方案:在请求其他接口前请 ...
- Django框架(四)
八.Django 模型层(2) 多表操作 创建模型 实例:我们来假定下面这些概念,字段和关系 作者模型:一个作者有姓名和年龄. 作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息. ...
- 跟随我在oracle学习php(4)
制作html表单 客户端(每个用户的计算机)在浏览网页时,都会向服务器(后台)端索要数据,然后将得 到的数据呈现在浏览器当中.除了索要数据之外,有时客户端也希望能够向服务器端发送 一些数据. 这时我们 ...
- 泥瓦工vps
http://blog.sina.com.cn/s/blog_16a3cb7cb0102xbvd.html
- labeled statement:标签语句
foo: for (var i=0; i< 5; i++) { for (var j=0; j<5; j++) { if ( i == j ) { // 跳到 foo 的下一个循环 // ...
- unity 中的UGUI 屏蔽鼠标穿透
void Update() { if(IsTouchedUI()) { Debug.Log("当前触摸在UI上"); } else { Debug.Log("当前没有触摸 ...
- FS:[0] 链条
0x01 用户态 在x86系统中,当线程在用户态执行时,段寄存器fs总是指向当前线程的TEB. 在Ntdll中有一个未公开的函数NtCurrentTeb() ,用来取得当前线程的TEB地址.FS:[ ...
- svn提示文件 is already locked
有时候在提交代码或者更新代码的时候svn会报错误,提示请执行"clean up",但是有时候执行"clean up"也没有什么用,不过当执行"clea ...
- return 返回值的用法
#coding:utf-8 # (1)把数据返回到函数调用处 def func(): # return 1 # return "aaabb" return [1,2,3,4] re ...
- 关于org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Incorrect string value: '\xE5\x91\xBC\xE5\x92\x8C...' for column 'visit_addr' at row 1的问题
当我们使用Hibernate框架像表中插入一条新的数据时控制台可能会报这样的错误“org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Incorrec ...