shuchkin / Simplexlsxgen
Labels
Projects that are alternatives of or similar to Simplexlsxgen
SimpleXLSXGen class 0.9.25 (Official)
Export data to Excel XLSX file. PHP XLSX generator. No external tools and libraries.
(!) XLSX reader here.
Sergey Shuchkin [email protected] 2020-2021
Hey, bro, please ★ the package for my motivation :)
Basic Usage
$books = [
['ISBN', 'title', 'author', 'publisher', 'ctry' ],
[618260307, 'The Hobbit', 'J. R. R. Tolkien', 'Houghton Mifflin', 'USA'],
[908606664, 'Slinky Malinki', 'Lynley Dodd', 'Mallinson Rendel', 'NZ']
];
$xlsx = SimpleXLSXGen::fromArray( $books );
$xlsx->saveAs('books.xlsx'); // or downloadAs('books.xlsx') or $xlsx_content = (string) $xlsx
Installation
The recommended way to install this library is through Composer. New to Composer?
This will install the latest supported version:
$ composer require shuchkin/simplexlsxgen
or download class here
Examples
Data types
$data = [
['Integer', 123],
['Float', 12.35],
['Percent', '12%'],
['Datetime', '2020-05-20 02:38:00'],
['Date','2020-05-20'],
['Time','02:38:00'],
['Datetime PHP', new DateTime('2021-02-06 21:07:00')],
['String', 'Long UTF-8 String in autoresized column'],
['RAW string', "\0".'2020-10-04 16:02:00']
];
SimpleXLSXGen::fromArray( $data )->saveAs('datatypes.xlsx');
Fluid examples
SimpleXLSXGen::fromArray( $books )->downloadAs('table.xlsx'); // output to browser for download
SimpleXLSXGen::fromArray( $books )->addSheet( $books2 )->download(); // multiple sheets
(new SimpleXLSXGen)->addSheet( $books, 'Modern style')->save();
Old school, multiple sheets
$xlsx = new SimpleXLSXGen();
$xlsx->addSheet( $books, 'Catalog 2021' );
$xlsx->addSheet( $books2, 'Stephen King catalog');
$xlsx->downloadAs('books_2021.xlsx');
Debug
ini_set('error_reporting', E_ALL );
ini_set('display_errors', 1 );
$data = [
['Debug', 123]
]
SimpleXLSXGen::fromArray( $data )->saveAs('debug.xlsx');
History
v0.9.25 (2021-02-26) Added PHP Datetime object values in a cells
v0.9.24 (2021-02-26) * Percent
v0.9.23 (2021-01-25) Fix local floats in XML
v0.9.22 (2020-11-04) Added multiple sheets support, thx Savino59, class ready for extend now
v0.9.21 (2020-10-17) Updated images
v0.9.20 (2020-10-04) Disable type detection if string started with chr(0)
v0.9.19 (2020-08-23) Numbers like SKU right aligned now
v0.9.18 (2020-08-22) Fixed fast shared strings index
v0.9.17 (2020-08-21) Fixed real numbers in 123.45 format detection, fast shared strings index (thx fredriksundin)
v0.9.16 (2020-07-29) Fixed time detection in HH:MM:SS format
v0.9.15 (2020-07-14) escape of shared strings for special chars in cells #1
v0.9.14 (2020-05-31) fixed num2name A-Z,AA-AZ column names, thx Ertan Yusufoglu
v0.9.13 (2020-05-21) if string more 160 chars, save as inlineStr
v0.9.12 (2020-05-21) readme fixed
v0.9.11 (2020-05-21) removed XML unimportant attributes
v0.9.10 (2020-05-20) initial release