PHP Excel Changelog

What's new in PHP Excel 1.7.8

Oct 16, 2012
  • BREAKING CHANGE! As part of the planned changes for handling array formulae in mworkbooks, there are some changes that will affect the PHPExcel_Cell object methods.
  • The following methods are now deprecated, and will be removed in version 1.7.9:
  • getCalculatedValue() The getValue() method will return calculated
  • values for cells containing formulae instead.
  • setCalculatedValue() The cell value will always contain the result of a
  • any formula calculation.
  • setFormulaAttributes() Will now be determined by the arguments to the
  • setFormula() method.
  • getFormulaAttributes() This will be replaced by the getArrayFormulaRange()
  • method.
  • The following methods will be added in version 1.7.9:
  • getFormula() Use to retrieve a cell formula, will return the cell value if the cell doesn't contain a formula, or is not part of an array formula range.
  • setFormula() Use to set a cell formula. It will still be possible to set formulae using the setValue() and setValueExplicit() methods.
  • calculate() Use to execute a formula calculation to update the cell value.
  • isFormula() Use to determine if a cell contains a formula, or is
  • part of an array formula range or not.
  • isArrayFormula() Use to determine if a cell contains an array formula, or is part of an array formula range or not.
  • getArrayFormulaRange() Use to retrieve an array formula range.
  • The following methods will be changed in version 1.7.9:
  • setValue() The logic behind this will be modified to store formula values in the new cell property structure, but it will still perform the same function.
  • setValueExplicit() The logic behind this will be modified to store formula values in the new cell property structure, but it will still perform the same function.
  • getValue() Will no longer return a formula if the cell contains a formula, but will return the calculated value instead. For cells that don't contain a formula,
  • it will still return the stored value.
  • getDataType() Will return the datatype of the calculated value for cells that contain formulae.
  • setDataType() Error handling will be added to prevent setting a cell datatype to an inappropriate value.
  • Fixed in develop branch:
  • Special: (kkamkou) Phar builder script to add phar file as a distribution option
  • Feature: (MBaker) Refactor PDF Writer to allow use with a choice of PDF Rendering library rather than restricting to tcPDF
  • Current options are tcPDF, mPDF, DomPDF
  • tcPDF Library has now been removed from the deployment bundle
  • Feature: (MBaker) Initial version of HTML Reader
  • Feature: (Progi1984) & (blazzy) Work items 9605 - Implement support for AutoFilter in PHPExcel_Writer_Excel5
  • Feature: (MBaker) Modified ERF and ERFC Engineering functions to accept Excel 2010's modified acceptance of negative arguments
  • Feature: (k1LoW) Support SheetView `view` attribute (Excel2007)
  • Feature: (MBaker) Excel compatibility option added for writing CSV files
  • While Excel 2010 can read CSV files with a simple UTF-8 BOM, Excel2007 and earlier require UTF-16LE encoded tab-separated files.
  • The new setExcelCompatibility(TRUE) option for the CSV Writer will generate files with this formatting for easy import into Excel2007 and below.
  • Feature: (MBaker) Language implementations for Turkish (tr)
  • Feature: (MBaker) Added fraction tests to advanced value binder
  • Feature: (MBaker) Allow call to font setUnderline() for underline format to specify a simple boolean for UNDERLINE_NONE or UNDERLINE_SINGLE
  • General: (alexgann) Add Currency detection to the Advanced Value Binder
  • General: (MBaker) Work item 18404 - setCellValueExplicitByColumnAndRow() do not return PHPExcel_Worksheet
  • General: (MBaker) Work item 18324 - Reader factory doesn't read anymore XLTX and XLT files
  • General: (MBaker) Magic __toString() method added to Cell object to return raw data value as a string
  • General: (alexgann) Add cell indent to html rendering
  • General: (Raghav1981) ZeroHeight for rows in sheet format
  • Bugfix: (cyberconte) Patch 12318 - OOCalc cells containing inside the tag
  • Bugfix: (schir1964) Fix to listWorksheetInfo() method for OOCalc Reader
  • Bugfix: (MBaker) Support for "e" (epoch) date format mask
  • Rendered as a 4-digit CE year in non-Excel outputs
  • Bugfix: (MBaker) Work items 15799 and 18278 - Background color cell is always black when editing cell
  • Bugfix: (MBaker) Work items 15905 and 18183 - Allow "no impact" to formats on Conditional Formatting
  • Bugfix: (wackonline) OOCalc Reader fix for NULL cells
  • Bugfix: (seltzlab) Fix to excel2007 Chart Writer when a $plotSeriesValues is empty
  • Bugfix: (MBaker) Various fixes to Chart handling
  • Bugfix: (MBaker) Work item 18370 - Error loading xlsx file with column breaks
  • Bugfix: (MBaker) OOCalc Reader now handles percentage and currency data types
  • Bugfix: (MBaker) Work Item 18415 - mb_stripos empty delimiter
  • Bugfix: (takaakik) Work Item 15455 - getNestingLevel() Error on Excel5 Read
  • Bugfix: (MBaker) Fix to Excel5 Reader when cell annotations are defined before their referenced text objects
  • Bugfix: (MBaker) OOCalc Reader modified to process number-rows-repeated
  • Bugfix: (MBaker) Work item 18377 - Chart Title compatibility on Excel 2007
  • Bugfix: (MBaker) Work item 18146 - Chart Refresh returning cell reference rather than values
  • Bugfix: (MBaker) Work item 18145 - Autoshape being identified in twoCellAnchor when includeCharts is TRUE triggering load error
  • Bugfix: (MBaker) Work item 18325 - v-type texts for series labels now recognised and parsed correctly
  • Bugfix: (wolf5x) Work item 18492 - load file failed if the file has no extensionType
  • Bugfix: (dverspui) Pattern fill colours in Excel2007 Style Writer
  • Bugfix: (MBaker) Excel2007 Writer order of font style elements to conform with Excel2003 using compatibility pack
  • Bugfix: (MBaker) Work item 18425 - Problems with $_activeSheetIndex when decreased below 0.
  • Bugfix: (MBaker) Work item 18597 - PHPExcel_CachedObjectStorage_SQLite3::cacheMethodIsAvailable() uses class_exists - autoloader throws error
  • Bugfix: (MBaker) Work item 18598 - Cannot access private property PHPExcel_CachedObjectStorageFactory::$_cacheStorageMethod
  • Bugfix: (MBaker) Work item 18397 - Data titles for charts
  • PHPExcel_Chart_Layout now has methods for getting/setting switches for displaying/hiding chart data labels
  • Bugfix: (MBaker) Discard single cell merge ranges when reading (stupid that Excel allows them in the first place)
  • Bugfix: (MBaker) Discard hidden autoFilter named ranges

New in PHP Excel 1.7.7 (May 21, 2012)

  • Bugfix: (Progi1984) Work item 8916 - Support for Rich-Text in PHPExcel_Writer_Excel5
  • Bugfix: (cyberconte) Work item 17471 - OOCalc cells contain same data bug?
  • Feature: (schir1964) listWorksheetInfo() method added to Readers... courtesy of Christopher Mullins
  • Feature: (MBaker) Options for cell caching using Igbinary and SQLite/SQlite3
  • Feature: (MBaker) Additional row iterator options: allow a start row to be defined in the constructor; seek(), and prev() methods added
  • Feature: (Progi1984) Work item 9759 - Implement document properties in Excel5 writer
  • Feature: (MBaker) Work item 16 - Implement chart functionality (EXPERIMENTAL)
  • Initial definition of chart objects
  • Reading Chart definitions through the Excel2007 Reader
  • Facility to render charts to images using the 3rd-party jpgraph library
  • Writing Charts using the Excel2007 Writer
  • General: (MBaker) Fix to build to ensure that Examples are included with the documentation
  • General: (MBaker) Reduce cell caching overhead using dirty flag to ensure that cells are only rewritten to the cache if they have actually been changed
  • General: (MBaker) Improved memory usage in CSV Writer
  • General: (MBaker) Improved speed and memory usage in Excel5 Writer
  • General: (MBaker) Experimental -
  • Added getHighestDataColumn(), getHighestDataRow(), getHighestRowAndColumn() and calculateWorksheetDataDimension() methods for the worksheet that return the highest row and column that have cell records
  • General: (MBaker) Change iterators to implement Iterator rather than extend CachingIterator, as a fix for PHP 5.4. changes in SPL
  • Bugfix: (MBaker) Work item 15459 - Invalid cell coordinate in Autofilter for Excel2007 Writer
  • Bugfix: (MBaker) Work item 15518 - PCLZip library issue
  • Bugfix: (MBaker) Work item 15537 - Excel2007 Reader canRead function bug
  • Bugfix: (MBaker) Support for Excel functions whose return can be used as either a value or as a cell reference depending on its context within a formula
  • Bugfix: (gilles06) Work item 15707 - ini_set() call in Calculation class destructor
  • Bugfix: (MBaker) Work item 15786 - RangeToArray strange array keys
  • Bugfix: (MBaker) Work item 15762 - INDIRECT() function doesn't work with named ranges
  • Bugfix: (MBaker) Locale-specific fix to text functions when passing a boolean argument instead of a string
  • Bugfix: (MBaker) Work item 16246 - reader/CSV fails on this file
  • auto_detect_line_endings now set in CSV reader
  • Bugfix: (MBaker) Work item 16212 - $arguments improperly used in CachedObjectStorage/PHPTemp.php
  • Bugfix: (MBaker) Work item 16643 - Bug In Cache System (cell reference when throwing caching errors)
  • Bugfix: (MBaker) Work item 16895 - PHP Invalid index notice on writing excel file when active sheet has been deleted
  • Bugfix: (MBaker) Work item 16956 - External links in Excel2010 files cause Fatal error
  • Bugfix:(MBaker) Work item 16960 - Previous calculation engine error conditions trigger cyclic reference errors
  • Bugfix: (mkopinsky) Work item 16266 - PHPExcel_Style::applyFromArray() returns null rather than style object in advanced mode
  • Bugfix:(fauvel) Work item 16958 - Cell::getFormattedValue returns RichText object instead of string
  • Bugfix: (MBaker) Work item 17166 - Indexed colors do not refer to Excel's indexed colors?
  • Bugfix: (MBaker) Work item 17199 - Indexed colors should be consistent with Excel and start from 1 (current index starts at 0)
  • Bugfix: (MBaker) Work item 17262 - Named Range definition in .xls when sheet reeference is quote wrapped
  • Bugfix:(MBaker) Work item 17403 - duplicateStyle() method doesn't duplicate conditional formats
  • Added an equivalent duplicateConditionalStyle() method for duplicating conditional styles
  • Bugfix: (bnr) Work item 17501 - =sumproduct(A,B) =sumproduct(B,A) in xlsx
  • Bugfix: (Progi1984) Work item 8916 - Support for Rich-Text in PHPExcel_Writer_Excel5
  • General: (MBaker) Work item 15405 - Two easy to fix Issues concerning PHPExcel_Token_Stack (l10n/UC)
  • General: (MBaker) Work item 15461 - Locale file paths not fit for windows
  • General: (MBaker) Work item 16643 - Add file directory as a cache option for cache_to_discISAM
  • General: (MBaker) Work item 16923 - Datatype.php & constant TYPE_NULL
  • General: (MBaker) Ensure use of system temp directory for all temporary work files, unless explicitly specified
  • General: (char101 Work item 16359 - [Patch] faster stringFromColumnIndex()
  • General: (whit1206) Work item 16028 - Fix for projects that still use old autoloaders
  • General: (atz) Work item 17024 - Unknown codepage: 10007
  • Additional Mac codepages

New in PHP Excel 1.6.3 (Sep 19, 2008)

  • Bugfix: (MBaker) Work item 7367 - Modified PHPExcelSharedDate::PHPToExcel() to force UTC
  • General: (MB) Applied patch 1629
  • General: (MB) Applied patch 1644
  • General: (MB) Work item 6485 - Implement repeatRow and repeatColumn in Excel5 writer
  • General: (MB) Work item 6838 - Remove scene3d filter in Excel2007 drawing
  • Feature: (MBaker) Work item 2346 - Implement CHOOSE and INDEX Lookup/Reference Functions
  • Feature: (MBaker) Work item 2346 - Implement CLEAN Text Functions
  • Feature: (MBaker) Work item 2346 - Implement YEARFRAC Date/Time Functions
  • Feature: (MB) Work item 6508 - Implement 2 options for print/show gridlines
  • Feature: (MB) Work item 7270 - Add VLOOKUP function (contribution)
  • Feature: (MB) Work item 7182 - Implemented: ShrinkToFit
  • Feature: (MB) Work item 7218 - Row heights not updated correctly when inserting new rows
  • Feature: (MB) Work item 7157 - Copy worksheets within the same workbook
  • Feature: (ET) Work item 7290 - Excel5 reader style support: horizontal and vertical alignment plus text wrap
  • Feature: (ET) Work item 7294 - Excel5 reader support for merged cells
  • Feature: (ET) Work item 7296 - Excel5 reader: Sheet Protection
  • Feature: (ET) Work item 7297 - Excel5 reader: Password for sheet protection
  • Feature: (ET) Work item 7299 - Excel5 reader: Column width
  • Feature: (ET) Work item 7301 - Excel5 reader: Row height
  • Feature: (ET) Work item 7304 - Excel5 reader: Font support
  • Feature: (ET) Work item 7324 - Excel5 reader: support for locked cells
  • Feature: (ET) Work item 7330 - Excel5 reader style support: Fill (background colors and patterns)
  • Feature: (ET) Work item 7332 - Excel5 reader style support: Borders (style and color)
  • Feature: (ET) Work item 7346 - Excel5 reader: Rich-Text support
  • Feature: (MB) Work item 7313 - Read Excel built-in number formats with Excel 2007 reader
  • Feature: (ET) Work item 7317 - Excel5 reader: Number format support
  • Feature: (MB) Work item 7362 - Creating a copy of PHPExcel object
  • Feature: (ET) Work item 7373 - Excel5 reader: support for row / column outline (group)
  • Feature: (MB) Work item 7380 - Implement default row/column sizes
  • Feature: (MB) Work item 7364 - Writer HTML - option to return styles and table separately
  • Feature: (ET) Work item 7393 - Excel5 reader: Support for remaining built-in number formats
  • Bugfix: (MBaker) Fixed rounding in HOUR MINUTE and SECOND Time functions, and improved performance for these
  • Bugfix: (MBaker) Fix to TRIM function
  • Bugfix: (MBaker) Fixed range validation in TIME Functions.php
  • Bugfix: (MBaker) EDATE and EOMONTH functions now return date values based on the returnDateType flag
  • Bugfix: (MBaker) Write date values that are the result of a calculation function correctly as Excel serialized dates rather than PHP serialized date values
  • Bugfix: (MB) Work item 6690 - Excel2007 reader not always reading boolean correctly
  • Bugfix: (MB) Work item 6275 - Columns above IZ
  • Bugfix: (MB) Work item 6853 - Other locale than English causes Excel2007 writer to produce broken xlsx
  • Bugfix: (MB) Work item 7061 - Typo: Number_fromat in NumberFormat.php
  • Bugfix: (MB) Work item 6865 - Bug in Worksheet_BaseDrawing setWidth()
  • Bugfix: (MB) Work item 6891 - PDF writer collapses column width for merged cells
  • Bugfix: (MB) Work item 6867 - Issues with drawings filenames
  • Bugfix: (MB) Work item 7073 - fromArray() local variable isn't defined
  • Bugfix: (MB) Work item 7276 - PHPExcelWriterExcel5->setTempDir() not passed to all classes involved in writing to a file
  • Bugfix: (MB) Work item 7277 - Excel5 reader not handling UTF-8 properly
  • Bugfix: (MB) Work item 7327 - If you write a 0 value in cell, cell shows as empty
  • Bugfix: (MB) Work item 7302 - Excel2007 writer: Row height ignored for empty rows
  • Bugfix: (MB) Work item 7281 - Excel2007 (comments related error)
  • Bugfix: (MB) Work item 7345 - Column width in other local

New in PHP Excel 1.4.5 (Aug 27, 2007)

  • General: (MB) Work item 3003 - Class file endings
  • General: (MB) Work item 3081 - Different calculation engine improvements
  • General: (MB) Work item 3082 - Different improvements in PHPExcelReaderExcel2007
  • General: (MB) Work item 3146 - Set XML indentation in PHPExcelWriterExcel2007
  • Feature: (MB) Work item 3159 - Optionally store temporary Excel2007 writer data in file instead of memory
  • Feature: (MB) Work item 3063 - Implement show/hide gridlines
  • Feature: (MB) Work item 3064 - Implement option to read only data
  • Feature: (MB) Work item 3080 - Optionally disable formula precalculation
  • Feature: (MB) Work item 3154 - Explicitly set cell datatype
  • Feature: (MBaker) Work item 2346 - Implement more Excel calculation functions
  • Addition of MINA, MAXA, COUNTA, AVERAGEA, MEDIAN, MODE, DEVSQ, STDEV, STDEVA, STDEVP, STDEVPA, VAR, VARA, VARP and VARPA Excel Functions
  • Fix to SUM, PRODUCT, QUOTIENT, MIN, MAX, COUNT and AVERAGE functions when cell contains a numeric value in a string datatype, bringing it in line with MS Excel behaviour
  • Bugfix: (MB) Work item 2881 - File_exists on ZIP fails on some installations
  • Bugfix: (MB) Work item 2879 - Argument in textRotation should be -90..90
  • Bugfix: (MB) Work item 2883 - Excel2007 reader/writer not implementing OpenXML/SpreadsheetML styles 100% correct
  • Bugfix: (MB) Work item 2513 - Active sheet index not read/saved
  • Bugfix: (MB) Work item 2935 - Print and print preview of generated XLSX causes Excel2007 to crash
  • Bugfix: (MB) Work item 2952 - Error in Calculations - COUNT() function
  • Bugfix: (MB) Work item 3002 - HTML and CSV writer not writing last row
  • Bugfix: (MB) Work item 3017 - Memory leak in Excel5 writer
  • Bugfix: (MB) Work item 3044 - Printing (PHPExcelWriterExcel5)
  • Bugfix: (MB) Work item 3046 - Problems reading zip://
  • Bugfix: (MB) Work item 3047 - Error reading conditional formatting
  • Bugfix: (MB) Work item 3067 - Bug in Excel5 writer (storePanes)
  • Bugfix: (MB) Work item 3077 - Memory leak in PHPExcelStyleColor