Download the PHP package avadim/fast-excel-writer without Composer
On this page you can find all versions of the php package avadim/fast-excel-writer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download avadim/fast-excel-writer
More information about avadim/fast-excel-writer
Files in avadim/fast-excel-writer
Package fast-excel-writer
Short Description Lightweight and very fast XLSX Excel Spreadsheet Writer in PHP
License MIT
Homepage https://github.com/aVadim483/fast-excel-writer
Informations about the package fast-excel-writer
FastExcelWriter v.6 |
FastExcelWriter is a part of the FastExcelPhp Project which consists of
- FastExcelWriter - to create Excel spreadsheets
- FastExcelReader - to read Excel spreadsheets
- FastExcelTemplator - to generate Excel spreadsheets from XLSX templates
- FastExcelLaravel - special Laravel edition
Introduction
This library is designed to be lightweight, super-fast and requires minimal memory usage.
FastExcelWriter creates Excel compatible spreadsheets in XLSX format (Office 2007+), with many features supported:
- Takes UTF-8 encoded input
- Multiple worksheets
- Supports currency/date/numeric cell formatting, formulas and active hyperlinks
- Supports most styling options for cells, rows, columns - colors, borders, fonts, etc.
- You can set the height of the rows and the width of the columns (including auto width calculation)
- You can add formulas, notes and images in you XLSX-files
- Supports workbook and sheet protection with/without passwords
- Supports page settings - page margins, page size
- Inserting multiple charts
- Supports data validations
Jump To:
- Changes in version 6
- Important changes in version 6.1
- Changes in version 5
- Important changes in version 5.8
- Simple Example
- Advanced Example
- Adding Notes
- Adding Images
- Workbook
- Workbook settings
- Sets metadata of workbook
- Set Directory For Temporary Files
- Helpers methods
- Sheets
- Create, select and remove sheet
- Sheet settings
- Page settings
- Row's settings
- Column's settings
- Group/outline rows and columns
- Define Named Ranges
- Freeze Panes and Autofilter
- Setting Active Sheet and Cells
- Print Settings
- Writing
- Writing Row by Row vs Direct
- Direct Writing To Cells
- Writing Cell Values
- Merging Cells
- Cell Formats
- Formulas
- Hyperlinks
- Using Rich Text
- Styles
- Cell Styles
- Row Styles
- Column Styles
- Other Columns Options
- Apply Styles (The Fluent Interface)
- Apply Borders
- Apply Fonts
- Apply Colors
- Apply Text Styles
- Charts
- Simple usage
- Combo charts
- Multiple charts
- Chart types
- Useful Chart Methods
- Protection of workbook and sheets
- Workbook protection
- Sheet protection
- Cells locking/unlocking
- Data validation
- Simple usage
- Define filters
- Check type of value
- Custom filters
- All Data Validation settings
- API Reference
- FastExcelWriter vs PhpSpreadsheet
- Do you want to support FastExcelWriter?
Installation
Use composer
to install FastExcelWriter into your project:
Changes In Version 6
- Data Validation support
Important changes in version 6.1
- , , and
are deprecated, instead of them you should use other functions: , , , , , , , - The behavior of the and has changed, they now set styles for the entire row or column (even if they are empty)
Changes In Version 5
- The general news is Chart support
Important changes in version 5.8
Before v.5.8
In version 5.8 and later
If you want to keep the previous behavior for backward compatibility, you should use option 'auto_convert_number' when creating a workbook.
Changes In Version 4
- Now the library works even faster
- Added a fluent interface for applying styles.
- New methods and code refactoring
Usage
You can find usage examples below or in /demo folder
Simple Example
Also, you can download generated file to client (send to browser)
Advanced Example
Adding Notes
There are currently two types of comments in Excel - comments and notes (see The difference between threaded comments and notes). Notes are old style comments in Excel (text on a light yellow background). You can add notes to any cells using method
You can change some note options. Allowed options of a note are:
- width - default value is
- height - default value is
- fill_color - default value is
- show - default value is
Also, you can use rich text in notes
For more information on using rich text, see here: Using Rich Text
Adding Images
Shared Strings
By default, strings are written directly to sheets. This increases the file size a little, but speeds up data writing and saves memory. If you want strings to be written to the shared string xml, you need to use the 'shared_string' option.
FastExcelWriter vs PhpSpreadsheet
PhpSpreadsheet is a perfect library with wonderful features for reading and writing many document formats. FastExcelWriter can only write and only in XLSX format, but does it very fast and with minimal memory usage.
FastExcelWriter:
- 7-9 times faster
- uses less memory by 8-10 times
- supports writing huge 100K+ row spreadsheets
Benchmark of PhpSpreadsheet (P) and FastExcelWriter (F), spreadsheet generation without styles
Rows x Cols | Time P | Time F | Memory P | Memory F |
---|---|---|---|---|
1000 x 5 | 0.98 sec | 0.19 sec | 2,048 Kb | 2,048 Kb |
1000 x 25 | 4.68 sec | 1.36 sec | 14,336 Kb | 2,048 Kb |
5000 x 25 | 23.19 sec | 3.61 sec | 77,824 Kb | 2,048 Kb |
10000 x 50 | 105.8 sec | 13.02 sec | 256,000 Kb | 2,048 Kb |
Do you want to support FastExcelWriter?
if you find this package useful you can support and donate to me for a cup of coffee:
- USDT (TRC20) TSsUFvJehQBJCKeYgNNR1cpswY6JZnbZK7
- USDT (ERC20) 0x5244519D65035aF868a010C2f68a086F473FC82b
- ETH 0x5244519D65035aF868a010C2f68a086F473FC82b
Or just give me a star on GitHub :)
All versions of fast-excel-writer with dependencies
ext-zip Version *
ext-json Version *
ext-mbstring Version *
avadim/fast-excel-helper Version ^1.2