日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

隨著Excel文件在商業(yè)和財務(wù)領(lǐng)域中的廣泛使用,將Excel文件整合到Web應(yīng)用程序中已經(jīng)成為開發(fā)人員所需的技能之一。由于Laravel是一種流行的PHP框架,其生態(tài)系統(tǒng)中有許多包可以幫助我們讀寫Excel文件。本文將介紹如何使用Laravel Excel和PHPOffice庫在Laravel應(yīng)用程序中讀寫Excel文件。

什么是Laravel Excel?

Laravel Excel是一個為Laravel框架開發(fā)的強(qiáng)大Excel處理工具。該工具提供了易于使用的API,可以幫助我們輕松地導(dǎo)入和導(dǎo)出Excel文件。該工具的一個主要優(yōu)點(diǎn)是它允許直接操作Excel文件而無需依賴于Excel軟件。

安裝Laravel Excel可以通過Composer完成。在終端中進(jìn)入Laravel項目的目錄,并運(yùn)行下面的Composer命令:

composer require maatwebsite/excel

登錄后復(fù)制

該命令將從Packagist下載最新版本的Laravel Excel并自動完成安裝過程。

如何使用Laravel Excel導(dǎo)出Excel文件?

Laravel Excel提供了一個Excel類,它是一個代理類,通過它可以創(chuàng)建新的Excel文件或打開并編輯現(xiàn)有的Excel文件。我們可以使用該類在Laravel應(yīng)用程序中導(dǎo)出Excel文件。

在項目中創(chuàng)建一個新的Excel文件,我們可以使用Laravel Excel提供的以下模板:

<?php

namespace AppExports;

use MaatwebsiteExcelConcernsFromCollection;
use MaatwebsiteExcelConcernsWithHeadings;

class ExampleExport implements FromCollection, WithHeadings
{
    public function headings(): array
    {
        return [
            'ID',
            'Name',
            'Email',
            'Phone',
        ];
    }

    /**
    * @return IlluminateSupportCollection
    */
    public function collection()
    {
        return User::select('id', 'name', 'email', 'phone')->get();
    }
}

登錄后復(fù)制

在上面的代碼中,我們定義了一個名為ExampleExport的類。該類使用FromCollection和WithHeadings接口,這些接口提供了生成Excel文件所需的方法。

在headings()方法中,我們定義了Excel文件的標(biāo)題,這些標(biāo)題列在Excel工作表的第一行中。在collect()方法中,我們從數(shù)據(jù)庫中檢索用戶記錄并將其返還給調(diào)用該類的控制器。

要導(dǎo)出Excel文件,我們可以在控制器方法中實(shí)例化ExampleExport,如下所示:

public function export()
{
    return Excel::download(new ExampleExport, 'users.xlsx');
}

登錄后復(fù)制

在上面的代碼中,我們使用Laravel Excel提供的download()方法從ExampleExport導(dǎo)出一個Excel文件。該方法需要兩個參數(shù):第一個參數(shù)是ExampleExport實(shí)例,第二個參數(shù)是Excel文件名。

在瀏覽器中訪問導(dǎo)出方法的URL時,系統(tǒng)將會提示您下載users.xlsx文件。

如何使用Laravel Excel導(dǎo)入Excel文件?

讀取Excel文件并將其數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫時,我們可以使用Laravel Excel提供的import()方法。該方法接受三個參數(shù):文件對象、任務(wù)回調(diào)和工作表名稱。

為了演示如何導(dǎo)入Excel文件,我們將創(chuàng)建一個名為UserImport的類,如下所示:

<?php

namespace AppImports;

use AppUser;
use MaatwebsiteExcelConcernsToModel;

class UserImport implements ToModel
{
    public function model(array $row)
    {
        return new User([
            'name' => $row[0],
            'email' => $row[1],
            'phone' => $row[2],
        ]);
    }
}

登錄后復(fù)制

在上面的代碼中,我們使用ToModel接口實(shí)現(xiàn)了UserImport類。ToModel接口提供了一個必需的model()方法,該方法將每一行Excel數(shù)據(jù)轉(zhuǎn)換為模型對象。在上面的代碼中,我們解析了Excel文件中的前三個列并將其用于創(chuàng)建新的用戶記錄。

在控制器中使用import()方法導(dǎo)入Excel文件,如下所示:

public function import(Request $request)
{
    $file = $request->file('file');
    Excel::import(new UserImport, $file);
    return redirect()->back()->with('success', 'Excel file imported successfully.');
}

登錄后復(fù)制

在上面的代碼中,我們獲取上傳的Excel文件對象并通過Laravel Excel的import()方法將其導(dǎo)入到UserImport類中。如果導(dǎo)入成功,系統(tǒng)將向用戶發(fā)送帶有“Excel文件成功導(dǎo)入”的成功消息的重定向響應(yīng)。

如何使用PHPOffice庫讀寫Excel文件?

PHPOffice是一個PHP庫,用于讀寫不同類型的辦公室文件,如Excel、Word和PowerPoint等。PHPOffice與Laravel Excel不同,它不是為特定的框架開發(fā)的,可以用于任何PHP應(yīng)用程序中。

在安裝PHPOffice之前,您需要確保已安裝PHP Zip擴(kuò)展和PHP XML擴(kuò)展。

使用Composer安裝PHPOffice的Spreadsheet庫,可以使用以下命令:

composer require phpoffice/phpspreadsheet

登錄后復(fù)制

要創(chuàng)建一個新的Excel文件,我們可以使用以下代碼:

<?php

use PhpOfficePhpSpreadsheetSpreadsheet;
use PhpOfficePhpSpreadsheetWriterXlsx;

$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World!');
$sheet->setCellValue('B1', 'This is PHPOffice.');

$writer = new Xlsx($spreadsheet);
$writer->save('hello.xlsx');

登錄后復(fù)制

在上面的代碼中,我們首先創(chuàng)建一個新的電子表格,并在其第一行的前兩個列中添加了“Hello World!”和“This is PHPOffice.”的單元格。然后,我們將電子表格保存到hello.xlsx文件中。

要打開和編輯現(xiàn)有的Excel文件,我們可以使用以下代碼:

<?php

use PhpOfficePhpSpreadsheetIOFactory;

$spreadsheet = IOFactory::load('hello.xlsx');
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('C1', 'This cell has been added.');

$writer = new Xlsx($spreadsheet);
$writer->save('hello.xlsx');

登錄后復(fù)制

在上面的代碼中,我們使用IOFactory類從磁盤加載現(xiàn)有的Excel文件。然后,我們打開了該文件的活動工作表,并向其添加了一個新的單元格。最后,我們將更新保存到原始文件中。

結(jié)論

在本文中,我們介紹了如何使用Laravel Excel和PHPOffice庫在Laravel應(yīng)用程序中讀寫Excel文件。我們學(xué)習(xí)了如何使用Laravel Excel導(dǎo)出和導(dǎo)入Excel文件,以及如何使用PHPOffice庫創(chuàng)建、打開和編輯現(xiàn)有的Excel文件。這些技術(shù)應(yīng)該使您能夠更輕松地整合Excel文件到您的Laravel應(yīng)用程序中。

以上就是Laravel開發(fā):如何使用Laravel Excel和PHPOffice讀寫Excel文件?的詳細(xì)內(nèi)容,更多請關(guān)注www.xfxf.net其它相關(guān)文章!

分享到:
標(biāo)簽:EXCEL laravel PHPOffice
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定