diff --git a/README.md b/README.md index fe53d43..edf5ce6 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,9 @@ `Easy Excel`是一个基于 box/spout 封装的Excel读写工具,可以帮助开发者更快速更轻松地读写Excel文件, 并且无论读取多大的文件只需占用极少的内存。 + +由于box/spout 已经更新为 /openspout/openspout 所以再次更新 + > 由于`box/spout`只支持读写`xlsx`、`csv`、`ods`等类型文件,所以本项目目前也仅支持读写这三种类型的文件。 diff --git a/composer.json b/composer.json index d44dd12..11ee4ad 100644 --- a/composer.json +++ b/composer.json @@ -24,7 +24,7 @@ ], "require": { "php": ">=7.1.0", - "box/spout": "~3", + "openspout/openspout": "~v3.7.4", "league/flysystem": "~1|~2|~3" }, "require-dev": { diff --git a/src/Contracts/Exporter.php b/src/Contracts/Exporter.php index 2bf354e..ed229dc 100644 --- a/src/Contracts/Exporter.php +++ b/src/Contracts/Exporter.php @@ -2,7 +2,7 @@ namespace Dcat\EasyExcel\Contracts; -use Box\Spout\Common\Entity\Style\Style; +use OpenSpout\Common\Entity\Style\Style; interface Exporter extends Excel { @@ -54,7 +54,7 @@ public function store(string $filePath, array $diskConfig = []); /** * @return string * - * @throws \Box\Spout\Common\Exception\IOException + * @throws \OpenSpout\Common\Exception\IOException */ public function raw(); } diff --git a/src/Contracts/Exporters/Sheet.php b/src/Contracts/Exporters/Sheet.php index ded571b..388e5db 100644 --- a/src/Contracts/Exporters/Sheet.php +++ b/src/Contracts/Exporters/Sheet.php @@ -2,8 +2,8 @@ namespace Dcat\EasyExcel\Contracts\Exporters; -use Box\Spout\Common\Entity\Row; -use Box\Spout\Common\Entity\Style\Style; +use OpenSpout\Common\Entity\Row; +use OpenSpout\Common\Entity\Style\Style; interface Sheet { diff --git a/src/Contracts/Importer.php b/src/Contracts/Importer.php index a89dceb..943f4d1 100644 --- a/src/Contracts/Importer.php +++ b/src/Contracts/Importer.php @@ -2,8 +2,8 @@ namespace Dcat\EasyExcel\Contracts; -use Box\Spout\Common\Exception\IOException; -use Box\Spout\Common\Exception\UnsupportedTypeException; +use OpenSpout\Common\Exception\IOException; +use OpenSpout\Common\Exception\UnsupportedTypeException; use Dcat\EasyExcel\Support\SheetCollection; use League\Flysystem\FileNotFoundException; use Symfony\Component\HttpFoundation\File\UploadedFile; diff --git a/src/Contracts/Sheet.php b/src/Contracts/Sheet.php index 3138ee0..c073546 100644 --- a/src/Contracts/Sheet.php +++ b/src/Contracts/Sheet.php @@ -2,7 +2,7 @@ namespace Dcat\EasyExcel\Contracts; -use Box\Spout\Reader\SheetInterface; +use OpenSpout\Reader\SheetInterface; use Dcat\EasyExcel\Support\SheetCollection; interface Sheet diff --git a/src/Excel.php b/src/Excel.php index c92f593..9559385 100644 --- a/src/Excel.php +++ b/src/Excel.php @@ -2,7 +2,7 @@ namespace Dcat\EasyExcel; -use Box\Spout\Common\Type; +use OpenSpout\Common\Type; use Dcat\EasyExcel\Exporters\Exporter; use Dcat\EasyExcel\Exporters\Sheet; use Dcat\EasyExcel\Importers\Importer; diff --git a/src/Exporters/Exporter.php b/src/Exporters/Exporter.php index 5ef7dbd..912913f 100644 --- a/src/Exporters/Exporter.php +++ b/src/Exporters/Exporter.php @@ -2,8 +2,8 @@ namespace Dcat\EasyExcel\Exporters; -use Box\Spout\Common\Entity\Style\Style; -use Box\Spout\Writer\WriterInterface; +use OpenSpout\Common\Entity\Style\Style; +use OpenSpout\Writer\WriterInterface; use Dcat\EasyExcel\Contracts; use Dcat\EasyExcel\Spout\WriterFactory; use Dcat\EasyExcel\Support\Traits\Macroable; @@ -137,7 +137,7 @@ public function chunk($callbacks) public function download(string $fileName) { try { - /* @var \Box\Spout\Writer\WriterInterface $writer */ + /* @var \OpenSpout\Writer\WriterInterface $writer */ $writer = $this->makeWriter($fileName); $writer->openToBrowser($this->prepareFileName($fileName)); @@ -159,7 +159,7 @@ public function download(string $fileName) * @param array $diskConfig * @return bool * - * @throws \Box\Spout\Common\Exception\IOException + * @throws \OpenSpout\Common\Exception\IOException */ public function store(string $filePath, array $diskConfig = []) { @@ -187,12 +187,12 @@ public function store(string $filePath, array $diskConfig = []) /** * @return string * - * @throws \Box\Spout\Common\Exception\IOException + * @throws \OpenSpout\Common\Exception\IOException */ public function raw() { try { - /* @var \Box\Spout\Writer\WriterInterface $writer */ + /* @var \OpenSpout\Writer\WriterInterface $writer */ $writer = $this->makeWriter(); ob_start(); @@ -213,11 +213,11 @@ public function raw() * @param string $filePath * @return bool * - * @throws \Box\Spout\Common\Exception\IOException + * @throws \OpenSpout\Common\Exception\IOException */ protected function storeInLocal(string $filePath) { - /* @var \Box\Spout\Writer\WriterInterface $writer */ + /* @var \OpenSpout\Writer\WriterInterface $writer */ $writer = $this->makeWriter($filePath); $writer->openToFile($filePath); diff --git a/src/Exporters/Sheet.php b/src/Exporters/Sheet.php index c30d375..616a260 100644 --- a/src/Exporters/Sheet.php +++ b/src/Exporters/Sheet.php @@ -2,8 +2,8 @@ namespace Dcat\EasyExcel\Exporters; -use Box\Spout\Common\Entity\Row; -use Box\Spout\Common\Entity\Style\Style; +use OpenSpout\Common\Entity\Row; +use OpenSpout\Common\Entity\Style\Style; use Dcat\EasyExcel\Contracts; class Sheet implements Contracts\Exporters\Sheet diff --git a/src/Exporters/WriteSheet.php b/src/Exporters/WriteSheet.php index cdcf4f5..5128240 100644 --- a/src/Exporters/WriteSheet.php +++ b/src/Exporters/WriteSheet.php @@ -2,11 +2,11 @@ namespace Dcat\EasyExcel\Exporters; -use Box\Spout\Common\Entity\Row; -use Box\Spout\Common\Entity\Style\Style; -use Box\Spout\Writer\Common\Creator\WriterEntityFactory; -use Box\Spout\Writer\CSV\Writer as CsvWriter; -use Box\Spout\Writer\WriterInterface; +use OpenSpout\Common\Entity\Row; +use OpenSpout\Common\Entity\Style\Style; +use OpenSpout\Writer\Common\Creator\WriterEntityFactory; +use OpenSpout\Writer\CSV\Writer as CsvWriter; +use OpenSpout\Writer\WriterInterface; use Dcat\EasyExcel\Contracts; use Dcat\EasyExcel\Excel; use Dcat\EasyExcel\Support\Arr; @@ -26,8 +26,8 @@ trait WriteSheet * @param WriterInterface $writer * @return WriterInterface * - * @throws \Box\Spout\Common\Exception\IOException - * @throws \Box\Spout\Writer\Exception\WriterNotOpenedException + * @throws \OpenSpout\Common\Exception\IOException + * @throws \OpenSpout\Writer\Exception\WriterNotOpenedException */ protected function writeSheets(WriterInterface $writer) { @@ -65,8 +65,8 @@ protected function writeSheets(WriterInterface $writer) * @param array $rows * @param Contracts\Exporters\Sheet $sheet * - * @throws \Box\Spout\Common\Exception\IOException - * @throws \Box\Spout\Writer\Exception\WriterNotOpenedException + * @throws \OpenSpout\Common\Exception\IOException + * @throws \OpenSpout\Writer\Exception\WriterNotOpenedException */ protected function writeRowsFromArray(WriterInterface $writer, $index, array &$rows, Contracts\Exporters\Sheet $sheet) { @@ -86,8 +86,8 @@ protected function writeRowsFromArray(WriterInterface $writer, $index, array &$r * @param Generator $generator * @param Contracts\Exporters\Sheet $sheet * - * @throws \Box\Spout\Common\Exception\IOException - * @throws \Box\Spout\Writer\Exception\WriterNotOpenedException + * @throws \OpenSpout\Common\Exception\IOException + * @throws \OpenSpout\Writer\Exception\WriterNotOpenedException */ protected function writeRowsFromGenerator(WriterInterface $writer, $index, Generator $generator, Contracts\Exporters\Sheet $sheet) { @@ -107,8 +107,8 @@ protected function writeRowsFromGenerator(WriterInterface $writer, $index, Gener * @param array $item * @param Contracts\Exporters\Sheet $sheet * - * @throws \Box\Spout\Common\Exception\IOException - * @throws \Box\Spout\Writer\Exception\WriterNotOpenedException + * @throws \OpenSpout\Common\Exception\IOException + * @throws \OpenSpout\Writer\Exception\WriterNotOpenedException */ protected function writeRow(WriterInterface $writer, array &$item, Contracts\Exporters\Sheet $sheet) { @@ -132,8 +132,8 @@ protected function writeRow(WriterInterface $writer, array &$item, Contracts\Exp * @param Contracts\Exporters\Sheet $sheet * @param array $firstRow * - * @throws \Box\Spout\Common\Exception\IOException - * @throws \Box\Spout\Writer\Exception\WriterNotOpenedException + * @throws \OpenSpout\Common\Exception\IOException + * @throws \OpenSpout\Writer\Exception\WriterNotOpenedException */ protected function writeHeadings(WriterInterface $writer, Contracts\Exporters\Sheet $sheet, array $firstRow) { diff --git a/src/Importers/Importer.php b/src/Importers/Importer.php index c3add69..e37f7fb 100644 --- a/src/Importers/Importer.php +++ b/src/Importers/Importer.php @@ -2,10 +2,10 @@ namespace Dcat\EasyExcel\Importers; -use Box\Spout\Common\Exception\IOException; -use Box\Spout\Common\Exception\UnsupportedTypeException; -use Box\Spout\Reader\Common\Creator\ReaderFactory; -use Box\Spout\Reader\ReaderInterface; +use OpenSpout\Common\Exception\IOException; +use OpenSpout\Common\Exception\UnsupportedTypeException; +use OpenSpout\Reader\Common\Creator\ReaderFactory; +use OpenSpout\Reader\ReaderInterface; use Dcat\EasyExcel\Contracts; use Dcat\EasyExcel\Contracts\Sheet as SheetInterface; use Dcat\EasyExcel\Support\SheetCollection; @@ -194,10 +194,10 @@ public function active(): Contracts\Sheet } /** - * @param \Box\Spout\Reader\ReaderInterface $reader + * @param \OpenSpout\Reader\ReaderInterface $reader * @return \Generator * - * @throws \Box\Spout\Reader\Exception\ReaderNotOpenedException + * @throws \OpenSpout\Reader\Exception\ReaderNotOpenedException */ protected function readSheets(ReaderInterface $reader) { @@ -210,10 +210,10 @@ protected function readSheets(ReaderInterface $reader) /** * @param string|UploadedFile $path - * @return \Box\Spout\Reader\ReaderInterface + * @return \OpenSpout\Reader\ReaderInterface * - * @throws \Box\Spout\Common\Exception\UnsupportedTypeException - * @throws \Box\Spout\Common\Exception\IOException + * @throws \OpenSpout\Common\Exception\UnsupportedTypeException + * @throws \OpenSpout\Common\Exception\IOException */ protected function makeReader($path) { @@ -223,7 +223,7 @@ protected function makeReader($path) $path = $path->getRealPath(); } - /* @var \Box\Spout\Reader\ReaderInterface $reader */ + /* @var \OpenSpout\Reader\ReaderInterface $reader */ if ($this->type || $extension) { $reader = ReaderFactory::createFromType($this->type ?: $extension); } else { diff --git a/src/Importers/NullSheet.php b/src/Importers/NullSheet.php index b98905b..38f8c03 100644 --- a/src/Importers/NullSheet.php +++ b/src/Importers/NullSheet.php @@ -2,7 +2,7 @@ namespace Dcat\EasyExcel\Importers; -use Box\Spout\Reader\SheetInterface; +use OpenSpout\Reader\SheetInterface; use Dcat\EasyExcel\Contracts; use Dcat\EasyExcel\Support\SheetCollection; diff --git a/src/Importers/Sheet.php b/src/Importers/Sheet.php index 0fe88ae..e184d4c 100644 --- a/src/Importers/Sheet.php +++ b/src/Importers/Sheet.php @@ -2,8 +2,8 @@ namespace Dcat\EasyExcel\Importers; -use Box\Spout\Common\Entity\Row; -use Box\Spout\Reader\SheetInterface; +use OpenSpout\Common\Entity\Row; +use OpenSpout\Reader\SheetInterface; use Dcat\EasyExcel\Contracts; use Dcat\EasyExcel\Support\Arr; use Dcat\EasyExcel\Support\SheetCollection; diff --git a/src/Spout/GlobalFunctionsHelper.php b/src/Spout/GlobalFunctionsHelper.php index 6a98e33..c4acfa1 100644 --- a/src/Spout/GlobalFunctionsHelper.php +++ b/src/Spout/GlobalFunctionsHelper.php @@ -2,7 +2,7 @@ namespace Dcat\EasyExcel\Spout; -use Box\Spout\Common\Helper\GlobalFunctionsHelper as Helper; +use OpenSpout\Common\Helper\GlobalFunctionsHelper as Helper; class GlobalFunctionsHelper extends Helper { diff --git a/src/Spout/WriterFactory.php b/src/Spout/WriterFactory.php index 6ad74b4..cd95525 100644 --- a/src/Spout/WriterFactory.php +++ b/src/Spout/WriterFactory.php @@ -2,19 +2,19 @@ namespace Dcat\EasyExcel\Spout; -use Box\Spout\Common\Creator\HelperFactory; -use Box\Spout\Common\Exception\UnsupportedTypeException; -use Box\Spout\Common\Type; -use Box\Spout\Writer\Common\Creator\InternalEntityFactory; -use Box\Spout\Writer\Common\Creator\Style\StyleBuilder; -use Box\Spout\Writer\CSV\Manager\OptionsManager as CSVOptionsManager; -use Box\Spout\Writer\ODS\Creator\HelperFactory as ODSHelperFactory; -use Box\Spout\Writer\ODS\Creator\ManagerFactory as ODSManagerFactory; -use Box\Spout\Writer\ODS\Manager\OptionsManager as ODSOptionsManager; -use Box\Spout\Writer\WriterInterface; -use Box\Spout\Writer\XLSX\Creator\HelperFactory as XLSXHelperFactory; -use Box\Spout\Writer\XLSX\Creator\ManagerFactory as XLSXManagerFactory; -use Box\Spout\Writer\XLSX\Manager\OptionsManager as XLSXOptionsManager; +use OpenSpout\Common\Creator\HelperFactory; +use OpenSpout\Common\Exception\UnsupportedTypeException; +use OpenSpout\Common\Type; +use OpenSpout\Writer\Common\Creator\InternalEntityFactory; +use OpenSpout\Writer\Common\Creator\Style\StyleBuilder; +use OpenSpout\Writer\CSV\Manager\OptionsManager as CSVOptionsManager; +use OpenSpout\Writer\ODS\Creator\HelperFactory as ODSHelperFactory; +use OpenSpout\Writer\ODS\Creator\ManagerFactory as ODSManagerFactory; +use OpenSpout\Writer\ODS\Manager\OptionsManager as ODSOptionsManager; +use OpenSpout\Writer\WriterInterface; +use OpenSpout\Writer\XLSX\Creator\HelperFactory as XLSXHelperFactory; +use OpenSpout\Writer\XLSX\Creator\ManagerFactory as XLSXManagerFactory; +use OpenSpout\Writer\XLSX\Manager\OptionsManager as XLSXOptionsManager; use Dcat\EasyExcel\Spout\Writers\CSVWriter; use Dcat\EasyExcel\Spout\Writers\ODSWriter; use Dcat\EasyExcel\Spout\Writers\XLSXWriter; @@ -27,7 +27,7 @@ class WriterFactory * @param string $path The path to the spreadsheet file. Supported extensions are .csv,.ods and .xlsx * @return WriterInterface * - * @throws \Box\Spout\Common\Exception\UnsupportedTypeException + * @throws \OpenSpout\Common\Exception\UnsupportedTypeException */ public static function createFromFile(string $path) { @@ -42,7 +42,7 @@ public static function createFromFile(string $path) * @param string $writerType Type of the writer to instantiate * @return WriterInterface * - * @throws \Box\Spout\Common\Exception\UnsupportedTypeException + * @throws \OpenSpout\Common\Exception\UnsupportedTypeException */ public static function createFromType($writerType) { diff --git a/src/Spout/Writers/CSVWriter.php b/src/Spout/Writers/CSVWriter.php index 9fa261e..2014973 100644 --- a/src/Spout/Writers/CSVWriter.php +++ b/src/Spout/Writers/CSVWriter.php @@ -2,7 +2,7 @@ namespace Dcat\EasyExcel\Spout\Writers; -use Box\Spout\Writer\CSV\Writer; +use OpenSpout\Writer\CSV\Writer; class CSVWriter extends Writer { diff --git a/src/Spout/Writers/ODSWriter.php b/src/Spout/Writers/ODSWriter.php index c8d302d..9ee3098 100644 --- a/src/Spout/Writers/ODSWriter.php +++ b/src/Spout/Writers/ODSWriter.php @@ -2,7 +2,7 @@ namespace Dcat\EasyExcel\Spout\Writers; -use Box\Spout\Writer\ODS\Writer; +use OpenSpout\Writer\ODS\Writer; class ODSWriter extends Writer { diff --git a/src/Spout/Writers/XLSXWriter.php b/src/Spout/Writers/XLSXWriter.php index 5a27d24..3bf6c1a 100644 --- a/src/Spout/Writers/XLSXWriter.php +++ b/src/Spout/Writers/XLSXWriter.php @@ -2,7 +2,7 @@ namespace Dcat\EasyExcel\Spout\Writers; -use Box\Spout\Writer\XLSX\Writer; +use OpenSpout\Writer\XLSX\Writer; class XLSXWriter extends Writer { diff --git a/src/Traits/Excel.php b/src/Traits/Excel.php index 8f032c5..7dd9fac 100644 --- a/src/Traits/Excel.php +++ b/src/Traits/Excel.php @@ -2,10 +2,10 @@ namespace Dcat\EasyExcel\Traits; -use Box\Spout\Common\Entity\Style\Style; -use Box\Spout\Common\Type; -use Box\Spout\Reader\CSV\Reader as CSVReader; -use Box\Spout\Writer\CSV\Writer as CSVWriter; +use OpenSpout\Common\Entity\Style\Style; +use OpenSpout\Common\Type; +use OpenSpout\Reader\CSV\Reader as CSVReader; +use OpenSpout\Writer\CSV\Writer as CSVWriter; use Dcat\EasyExcel\Support\SheetCollection; use Illuminate\Contracts\Filesystem\Filesystem as LaravelFilesystem; use Illuminate\Support\Facades\Storage; @@ -196,7 +196,7 @@ public function configureCsv( } /** - * @param \Box\Spout\Reader\ReaderInterface|\Box\Spout\Writer\WriterInterface $readerOrWriter + * @param \OpenSpout\Reader\ReaderInterface|\OpenSpout\Writer\WriterInterface $readerOrWriter */ protected function configure(&$readerOrWriter) { diff --git a/tests/Exporters/CSV/WithSheetTest.php b/tests/Exporters/CSV/WithSheetTest.php index 5ce953f..c1df79d 100644 --- a/tests/Exporters/CSV/WithSheetTest.php +++ b/tests/Exporters/CSV/WithSheetTest.php @@ -2,9 +2,9 @@ namespace Tests\Exporters\CSV; -use Box\Spout\Common\Entity\Style\Color; -use Box\Spout\Writer\Common\Creator\Style\StyleBuilder; -use Box\Spout\Writer\Common\Creator\WriterEntityFactory; +use OpenSpout\Common\Entity\Style\Color; +use OpenSpout\Writer\Common\Creator\Style\StyleBuilder; +use OpenSpout\Writer\Common\Creator\WriterEntityFactory; use Dcat\EasyExcel\Excel; use Dcat\EasyExcel\Support\SheetCollection; use Tests\Exporters\Exporter; diff --git a/tests/Exporters/Exporter.php b/tests/Exporters/Exporter.php index 6aa10f7..389151d 100644 --- a/tests/Exporters/Exporter.php +++ b/tests/Exporters/Exporter.php @@ -25,8 +25,8 @@ protected function assertSingleSheet(string $file, $key, array $compares) * @param array $users1 * @param array $users2 * - * @throws \Box\Spout\Common\Exception\IOException - * @throws \Box\Spout\Common\Exception\UnsupportedTypeException + * @throws \OpenSpout\Common\Exception\IOException + * @throws \OpenSpout\Common\Exception\UnsupportedTypeException * @throws \League\Flysystem\FileNotFoundException */ protected function assertSheets($storePath, $users1, $users2) diff --git a/tests/Exporters/XLSX/WithSheetTest.php b/tests/Exporters/XLSX/WithSheetTest.php index 8ddf7ce..fd29ae7 100644 --- a/tests/Exporters/XLSX/WithSheetTest.php +++ b/tests/Exporters/XLSX/WithSheetTest.php @@ -2,9 +2,9 @@ namespace Tests\Exporters\XLSX; -use Box\Spout\Common\Entity\Style\Color; -use Box\Spout\Writer\Common\Creator\Style\StyleBuilder; -use Box\Spout\Writer\Common\Creator\WriterEntityFactory; +use OpenSpout\Common\Entity\Style\Color; +use OpenSpout\Writer\Common\Creator\Style\StyleBuilder; +use OpenSpout\Writer\Common\Creator\WriterEntityFactory; use Dcat\EasyExcel\Excel; use Dcat\EasyExcel\Support\SheetCollection; use Tests\Exporters\Exporter; diff --git a/tests/Importers/SheetTest.php b/tests/Importers/SheetTest.php index b6de741..08e9f9c 100644 --- a/tests/Importers/SheetTest.php +++ b/tests/Importers/SheetTest.php @@ -2,7 +2,7 @@ namespace Tests\Importers; -use Box\Spout\Reader\SheetInterface; +use OpenSpout\Reader\SheetInterface; use Dcat\EasyExcel\Contracts\Sheet; use Dcat\EasyExcel\Excel; use Dcat\EasyExcel\Support\SheetCollection;