提问人:HV Sharma 提问时间:10/25/2023 更新时间:10/25/2023 访问量:60
有没有一个类只用于使用 Laravel Excel 读取 excel 文件?
Is there a class just for reading excel file using Laravel Excel?
问:
我有一个 laravel 10 项目。我正在使用 Laravel Excel Package。
我阅读了文档,它分为 和 .没有提到只是阅读文件。我的意思是,我知道我们可以在 中进行调整,但我想知道任何适当的标准方法,只是为了读取文件和操作数据。Imports
Exports
Imports
有没有办法我们可以为多个 Spreedsheets 创建一个类文件,就像它只是为了读取和操作数据,而不是将其导入数据库?Imports
Exports
答:
1赞
rain developer
10/25/2023
#1
答:
这是使用 Laravel Excel 包直接在 Laravel 中读取和操作电子表格文件中数据的解决方案。当您需要处理 Excel 文件中的数据而不将其导入数据库时,这特别有用。
第 1 步:安装 Laravel Excel
composer require maatwebsite/excel
use Maatwebsite\Excel\Facades\Excel;
use Illuminate\Support\Collection;
// Read the Excel file
$excelSpreadSheetData = Excel::toCollection(null, 'your-spreadsheet.xlsx');
// In `$excelSpreadSheetData`, you get all the sheets available in your Excel file.
// Suppose that in your Excel file, there are 3 sheets (User, Employee, Salary).
// You can access the data like this:
$userData = $excelSpreadSheetData[0];
$employeeData = $excelSpreadSheetData[1];
$salaryData = $excelSpreadSheetData[2];
此方法允许您直接处理 Laravel 中 Excel 文件中的数据,并且对于不涉及将数据导入数据库的任务非常有用。
我希望这可以帮助任何希望在 Laravel 中使用 Excel 数据的人。
0赞
aVadim
10/25/2023
#2
另一种方法是使用另一个库 - https://packagist.org/packages/avadim/fast-excel-reader
此库是只读数据
use \avadim\FastExcelReader\Excel;
$excel = Excel::open($file);
$sheet = $excel->sheet('Users');
// Read all rows in two-dimensional array (ROW x COL)
$result = $excel->readRows();
如果文件太大,可以逐行阅读
$sheet = $excel->sheet();
foreach ($sheet->nextRow() as $rowNum => $rowData) {
// $rowData is array ['A' => ..., 'B' => ...]
// handling of $rowData here
// ...
}
评论