1. 程式人生 > >PHP Excel的匯入與匯出功能

PHP Excel的匯入與匯出功能

 為什麼做這件事:也許原因大家都各不相同,可能有的是為了工作,可能有的是為了學習,我的原因很簡單,就是為了玩,正應為好玩,才沒事的時候搞一搞。

這件事情很簡單,你需要引入一個github庫

maatwebsite/excel

然後http://www.maatwebsite.nl/laravel-excel/docs 這篇文章就可以很好的對import,export and export from view files很好的運用了

Let‘s’ begin

核心功能:匯入到資料庫功能

   /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
        /**
     * @description 通過excel表格匯入使用者資料,帳號和密碼都是郵箱號
    */
    public function index(){
        Excel::load(base_path(). '/storage/app/public/file.xlsx', function($reader) {
            $data = $reader->toArray();


            foreach($data[0] as $key => $v){
                    $userinfo = User::where('email',$v['email'])->first();
                    if(is_null($userinfo)){
                        $password = $v['email'];
                        $name = $v['name'];
                        $user_id = User::insertGetId([
                            'name'=>$name,
                            'email' => $v['email'],
                            'password' => bcrypt($password),
                            'created_at' => date('Y-m-d H:i:s',time()),
                        ]);
                    }else{
                        $user_id = $userinfo->id;
                    }
                    echo $user_id."<br>";
                }
        });
    }

如果你需要匯出pdf那麼你還另需要引入一下這些檔案的其中一個,裡邊她會悄悄告訴怎麼做的,那麼這個是你們兩個的悄悄話了,我就不便談及了。

Export to PDF

To export files to pdf, you will have to include "dompdf/dompdf": "~0.6.1""mpdf/mpdf": "~5.7.3" or "tecnick.com/tcpdf": "~6.0.0" in your composer.json and change the export.pdf.driver config setting accordingly.

  'pdf'                         => [
            /*
            |--------------------------------------------------------------------------
            | PDF Drivers
            |--------------------------------------------------------------------------
            | Supported: DomPDF, tcPDF, mPDF
            */
           

'driver'  => 'mPDF', (重點,composer 拉取的那個就用哪一個預設是DomPDF,我用的是mPDF)


            /*
            |--------------------------------------------------------------------------
            | PDF Driver settings
            |--------------------------------------------------------------------------
            */
            'drivers' => [



                /*
                |--------------------------------------------------------------------------
                | DomPDF settings
                |--------------------------------------------------------------------------
                */
                'DomPDF' => [
                    'path' => base_path('vendor/dompdf/dompdf/')
                ],


                /*
                |--------------------------------------------------------------------------
                | tcPDF settings
                |--------------------------------------------------------------------------
                */
                'tcPDF'  => [
                    'path' => base_path('vendor/tecnick.com/tcpdf/')
                ],


                /*
                |--------------------------------------------------------------------------
                | mPDF settings
                |--------------------------------------------------------------------------
                */
                'mPDF'   => [
                    'path' => base_path('vendor/mpdf/mpdf/')
                ],
            ]
        ]
    ],

從資料庫匯出功能

  public function export(){



        $data = User::orderBy('id','desc')->get()->toArray();


        Excel::create('使用者資訊表',function($excel) use($data){


        $excel->sheet('Sheetname', function($sheet) use($data) {


            $sheet->fromArray($data);


        });


        })->export('xls');

       // })->export('pdf'); 上邊如果用的是pdf這個地方需要修改pdf

    }

匯出的excel檔案:

匯出的pdf檔案:


儲存在伺服器上

要將建立的檔案儲存在伺服器上,請使用->store($ext, $path = false, $returnInfo = false)->save()

正常匯出到預設儲存路徑

預設情況下,該檔案將儲存在app/storage/exports資料夾中,該資料夾已在export.php配置檔案中定義

如果你是laravel5以上版本,想要上傳到xls檔案到伺服器上,你需要使用命令copy一份excel.php檔案到你的config目錄下:

php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
This will add an excel.php config file to your config folder.
就這麼多了,遇到不懂的問題,共同討論!

相關推薦

PHP Excel匯入匯出功能

 為什麼做這件事:也許原因大家都各不相同,可能有的是為了工作,可能有的是為了學習,我的原因很簡單,就是為了玩,正應為好玩,才沒事的時候搞一搞。 這件事情很簡單,你需要引入一個github庫 maatwebsite/excel 然後http://www.maatwebsi

Excel匯入匯出功能

工作中經常會用到excel的匯入和匯出功能,這裡我提供匯入和匯出類。 匯入類(需要注意的地方我註釋裡面寫好了): package cn.teacheredu.utils;

POI操作excel匯入匯出

    趁著不忙,抽空寫了個用poi操作excel匯入匯出的功能的小例子。不多說,直接上程式碼! poi的操作類: package com.bao.excelUtil; import java.io.File; import java.io.FileInputStrea

C# NPOI匯入匯出Excel

使用 NPOI 你就可以在沒有安裝 Office 或者相應環境的機器上對 WORD/EXCEL 文件進行讀寫。 環境:.Net 4.0 NPOI版本:2.2 引用DLL ICSharpCode.SharpZipLib.dll NPOI.dll NPOI.OOXML.dll

C# NPOI 匯入匯出Excel文件 相容xlsx, xls

下面附上給我提示的部落格: 這裡使用的NPOI版本為: 2.1.3.1 版本內包含.Net 2.0 與.Net 4.0 .Net 4.0中包含檔案 使用時需引用需要引用所有5個dll 使用到的引用 using NPOI.HSSF.UserModel

JAVA中實現對Excel匯入匯出

1 使用Jxl實現Excel的匯入與匯出 1 ) 新建實體類Book package com.bean; public class Book { private Integer id ; private String name ; private String

Excel匯入匯出功能實現

工作中經常會用到excel的匯入和匯出功能,這裡我提供匯入和匯出類。 匯入類(需要注意的地方我註釋裡面寫好了): package cn.teacheredu.utils; import java.io.InputStream; import java.text.Simpl

java匯入匯出excel,相容excel2003以及excel2007

java解析Excel(相容2003及2007):解析2003及以下使用HSSFWorkbook類,解析2007及以上使用XSSFWorkbook,如果解析類與excel版本不對應,丟擲相應的異常,例如HSSFWorkbook解析2007:org.apache.poi.po

sqldeveloper中Excel資料的匯入匯出

一:sqldeveloper中資料(Excel)的匯入 1.在資料庫中建立表(以ceshi表為例) create table ceshi(ids varchar(20),xingqi varchar(

c# ASP.NET MVC模式 WPS的匯入匯出的實現

前提準備:  1.想要成功進行WPS的匯入與匯出,你得先下載WPS,然後找到etapi.dll檔案(路徑:\Kingsoft\WPS Office\10.1.0.7520\office6),WPS安裝路徑看你們具體的安裝路徑。  2.然後在自己的ASP.NET MVC

MySQL資料庫的匯入匯出

一.MYSQL的命令列模式的設定:  桌面->我的電腦->屬性->環境變數->新建->PATH=";path/mysql/bin;"其中path為MYSQL的安裝路徑。 注:如果你的mysql命令以加入到環境變數,則不需要第一步,二.命令列進入MYSQL的

百萬級流水匯入匯出(千萬級未測試)

百萬級流水寫入檔案,再從檔案中寫入資料庫 千萬級資料量未測試 Laravel 中進行的除錯 class BusinessFlowsHistoryJob extends Job { public function __construct() { }

HIVE資料的匯入匯出詳解

1.匯入 load data [local] inpath ''  [overwrite]  into database.table [partition(partcol=val)] 原始檔案在linux本地 加上local 如果原始資料檔案在hdfs 不用local

linux上資料庫匯入匯出(mysql)

匯入資料庫 1.建立資料庫。  create database stillmealdbs; 2.linux下檢視Mysql預設編碼、修改預設編碼 檢視MySQL資料庫的預設編碼        1使用status

Javascript 實現 Excel 匯入生成圖表功能

本文系原創,轉載請註明出處: 有一段時間沒有寫web的文章了,不是不想寫,是自己學的確實不咋地,沒啥拿出手的東西跟大家分享。說來湊巧,剛想寫點什麼的時候,領導就給我分了一個web的小活,整理了一下跟大家分享。 前一段時間做了一個用 JS 實現圖表顯示的功能,加上這次的

domino xpages實現匯入匯出功能

Xpages實現匯入匯出功能需要相關的java包,首先要將包新增到專案當中,具體操作如下: 1、開啟視窗----開啟eclipse檢視----開啟包資源管理器。這樣就進入到一個類似eclipse設計的檢視,在這裡有專案的所有設計元素。 2、將java包(需要的包在rar檔

Oracle 對於.dmp檔案的匯入匯出功能 問題解決

因為需要,匯入磁碟上的.dmp檔案到資料庫裡,但是直接在命令列裡 imp a/[email protected] file = 'D:\dmp\a.dmp' full = y是執行不成功的而且報錯。 IMP-00013: only a DBA can import

Matlab檔案和資料的匯入匯出

ref: https://blog.csdn.net/zengzeyu/article/details/72530596 Matlab檔案和資料的匯入與匯出 2017年05月19日 15:18:35 周吳鄭王 閱讀數:740

資料庫實驗課堂作業- 5.資料庫的備份還原 匯入匯出

資料庫實驗課堂作業 5.資料庫的備份與還原 匯入與匯出 --5.1.3 內容: (1)將School資料庫的恢復模式設定為“完整”。 (2)為School資料庫建立一個新的備份裝置

Sqoop1 匯入匯出資料

https://blog.csdn.net/HG_Harvey/article/details/77985857 sqoop的參考 實習要求從hive裡把分割槽表匯出到oracle裡 指令碼:hiveORCL.op export --connect jdbc:oracle:thi