Kurounin
b01671213a
Removed double un-escaping when reading CSV
...
Removed "unescape enclosure functionality", since the unescaping is already handled by fgetcsv,
and performing the unescaping again would actually result int the text from the cell being read wrong.
As an example try parsing the folowing CSV:
```
"<img alt="""" src=""http://example.com/image.jpg "" />"
```
With the additional unescaping it would have ended up as:
```
<img alt=" src="http://example.com/image.jpg " />
```
instead of the correct:
```
<img alt="" src="http://example.com/image.jpg " />
```
Fixes https://github.com/PHPOffice/PHPExcel/pull/1171
2017-04-03 11:57:10 +09:00
Paolo Agostinetto
fd83c191ea
MATCH function behavior when third parameter is equal to 1 or -1
...
Fixes #51
Closes #122
2017-04-01 12:36:02 +09:00
Galkin Ivan
7fd5eefe04
Add empty cell condition for conditional formatting ( #128 )
2017-04-01 12:12:31 +09:00
MarkBaker
08ced34dfd
SUBTOTAL options for ignoring hidden cells
2017-03-19 14:17:20 +00:00
Paolo Agostinetto
9767112b23
Settings: deleted libxml_disable_entity_loader() calls ( #113 )
...
Settings: deleted libxml_disable_entity_loader() calls since they're not necessary.
Prevent setLibXmlLoaderOptions() and getLibXmlLoaderOptions() to call the libxml_disable_entity_loader() function which alter the global state of libxml.
See the discussion here https://github.com/PHPOffice/PhpSpreadsheet/issues/74
2017-03-12 22:00:46 +09:00
Adrien Crivelli
b669d48f2f
Un-deprecate `getCalculatedValue()`
...
Those were deprecated a long time ago in 59932b0cac
but their replacement seems to have never been added. 5 years later the
best solution is to un-deprecate them and if someday their replacement are
actually added, then we can re-deprecate them properly.
Closes #22
2017-03-11 12:16:07 +09:00
Adrien Crivelli
ea5663bc00
Drop support for PclZip
...
Over the years PclZip became a maintenance problem. It's code base
is old and the official project seems to have died out. ZipArchive
is now more commonly available and offer an easier and more complete
API. So PclZip was dropped in order to focus our efforts on what matters.
Closes #18
2017-03-11 11:48:46 +09:00
ankitm123
f99eb8dbba
Cloned worksheet updates were reflected on original (MemoryDrawing)
...
We need to make note of two things:
- The old code was trying to clone an objectArray, and hence was performing a shallow copy of memoryDrawing objects (the __clone magic function was not getting invoked).
Instead, if one loops over the objectArray, and then clones the individual memory drawing objects, then the __clone function for the MemoryDrawing object is invoked.
- The __clone function for memory drawing was using the clone keyword which does not deal with circular references (Since memoryDrawing object had references to worksheet object, it was encountering an infinite loop). However, serializing and unserializing objects deals with circular references pretty well.
Fixes #92
Closes #106
2017-03-06 22:58:19 +09:00
Adrien Crivelli
5fce89e76b
Merge pull request #108 from redokun/fix-105
...
Ods writer: add support for basic text styling (Fix #105 )
2017-03-06 11:39:50 +09:00
Christian Schmidt
3560f11935
Replace mbStrReplace() with str_replace()
...
By design, UTF-8 allows any byte-oriented substring searching algorithm,
since the sequence of bytes for a character cannot occur anywhere else
([source](https://en.wikipedia.org/wiki/UTF-8#Advantages_3 )).
So `str_replace()` also works for UTF-8-encoded strings, assuming that
the input strings are valid UTF-8 strings. The previous implementation
of mbStrReplace() did nothing to detect invalid strings.
Also, `str_replace()` does not support [Unicode equivalence](https://en.wikipedia.org/wiki/Unicode_equivalence ),
but nor do the other `mb_string` functions, and nor does `=SUBSTITUTE()` in Excel
(tested on Excel for Mac version 15.19.1, Excel 2016 for Windows and LibreOffice 5.1).
Closes #109
2017-03-06 11:33:06 +09:00
Paolo Agostinetto
93b5337bda
Writer\Ods\Content: Fix CS
2017-03-04 17:18:18 +01:00
Paolo Agostinetto
4efda2a512
Ods\Writer\Content: added support for xr styles (bold, italic, font family, font size, underline, bg color)
2017-03-04 17:18:18 +01:00
Paolo Agostinetto
e60897ae5f
Writer\Ods\Content: all variable names to camelcase
2017-03-04 17:18:18 +01:00
Paolo Agostinetto
8600e63123
Writer\Ods\Content: added docblock and removed unnecessary method parameter
2017-03-04 17:18:18 +01:00
Paolo Agostinetto
13bf3d4361
Writer\Ods\Content: making use of the "use" statement rather than explicit namespaces
2017-03-04 17:18:18 +01:00
Adrien Crivelli
0d1ff5b95f
Better exception message for new Excel functions
...
Closes https://github.com/PHPOffice/PHPExcel/issues/1136
2017-02-28 10:50:22 +09:00
Adrien Crivelli
f7e1aa3c41
Merge pull request #98 from redokun/fix-85
...
Ods reader: various fixes and unit tests added (bug #85 )
2017-02-25 16:51:10 +09:00
ankitm123
5df662e1a3
PHP 7.1 compatibility
...
Closes #96
Closes #101
Closes #102
2017-02-25 16:35:37 +09:00
Mingc
a1a03428e7
Decode comment text in xls reader ( #99 ) ( #100 )
...
Previously, xls reader did not decode comment properly if they used UTF-8.
References:
* [The Microsoft Excel File Format](https://www.openoffice.org/sc/excelfileformat.pdf ): From BIFF8 on, strings are always stored using UTF-16LE text encoding. The character array is a sequence of 16-bit values. Additionally it is possible to use a compressed format, which omits the high bytes of all characters, if they are all zero
* [Apache POI](http://grepcode.com/file/repo1.maven.org/maven2/org.apache.poi/poi/3.7/org/apache/poi/util/StringUtil.java#StringUtil.readUnicodeString%28org.apache.poi.util.LittleEndianInput%29 ): is16BitFlag
2017-02-23 11:42:52 +09:00
Paolo Agostinetto
529617c77d
Fixed CS errors
2017-02-20 22:14:07 +01:00
Paolo Agostinetto
f3c62b615e
Merge remote-tracking branch 'upstream/develop' into fix-85
2017-02-20 21:13:03 +01:00
Paolo Agostinetto
9785f926c1
php-cs run: fixed code style for new/changed files
2017-02-20 21:05:25 +01:00
Paolo Agostinetto
c954eddf57
Ods reader: fix sheet count and added a test for sheet names
2017-02-20 21:02:04 +01:00
Paolo Agostinetto
b50ca6e27c
Ods reader: added/fixed PHPDoc and classes without namespace
2017-02-20 21:00:42 +01:00
Paolo Agostinetto
4cf7beef31
Ods reader: few readability tweaks
2017-02-18 21:10:06 +01:00
Paolo Agostinetto
1667056515
IReadFilter interface: fixed docblocks
2017-02-18 21:02:33 +01:00
Paolo Agostinetto
6d6353c0f1
Ods reader: fix reading of cells with hyperlinks
2017-02-18 20:59:14 +01:00
Paolo Agostinetto
e46c298fe1
Ods reader: method loadIntoExisting() now uses DOMDocument to parse content
2017-02-18 20:38:10 +01:00
Adrien Crivelli
7b90bb9394
Drop checks for mbstring existence
...
Since mbstring is now a hard dependency enforced by composer, it is
no longer necessary to check for its presence and implement fallbacks.
2017-02-16 11:56:22 +09:00
Adrien Crivelli
1a52e23f08
Remove obsolete math polyfills
2017-02-16 11:15:22 +09:00
Adrien Crivelli
4ae95e5f7c
Drop obsolete method check existence
2017-02-16 11:01:35 +09:00
Adrien Crivelli
ce8ba1fa66
Drop obsolete PHP 5.2 specific code
2017-02-16 10:42:54 +09:00
Alex Milde
47d7260c43
Ignore images with missing data when reading xlsx
...
Ignore images with missing data when reading xlsx
Fixes #94 , closes #95
2017-02-16 09:42:07 +09:00
Roland Häder
99e5a8e919
Use `isset()` instead of `in_array()` for increased performance and code simplification
...
Closes #82
Signed-off-by: Roland Häder <roland@mxchange.org>
2017-02-14 23:06:35 +09:00
Adrien Crivelli
6e247c30d9
Drop support for SQLite 2 because it does not exist in PHP 5.6+ anymore
2017-02-14 12:53:20 +09:00
Zharikov Viktor
de5a04e4cb
Avoid adding an unnecessary extra cell at the end of table when writing to HTML
...
Fixes #91 , and closes #84
2017-02-14 11:57:29 +09:00
Tony Brix
149f9e649b
fill color will change startColor and endColor ( #90 )
2017-02-10 21:03:17 +09:00
Adrien Crivelli
fe73b2d402
Drop PHPSPREADSHEET_ROOT constant
2017-01-23 15:35:10 +09:00
Adrien Crivelli
8dddf56c2e
Use proper syntax for variadic functions
...
This simplify code, increase readability and improve the function
signature for API users.
2017-01-23 15:01:20 +09:00
Adrien Crivelli
152d39bd42
Unalign docblock
...
Because alignment was all broken and becaues it doesn't improve much
the code readability, but potentially create more complicated diff, we
prefer to unlaign all docblocks.
2017-01-23 11:25:02 +09:00
Adrien Crivelli
031af1e9d2
Standardize writers and readers name to be the format most common extension in CamelCase
2017-01-22 17:39:23 +09:00
Adrien Crivelli
1cdc8531b8
Rename writer `PDF` to `Pdf` for consistency
2017-01-22 00:58:48 +09:00
Adrien Crivelli
035281f04c
Basic test covering of all PDF writers
...
Third party PDF libraries must now be installed via composer and naturally
via composer autoloading mechanism. Because of that it is not necessary
to specify their path on disk. The usage is simplified and it allows us
to include them in our unit tests.
This also means that from now on PhpSpreadsheet must use composer autoloader
mechanism. The internal autoloading implementation was dropped.
2017-01-22 00:49:44 +09:00
titanrat
66f37218c9
Fix mpdf writer to work with MPDF 6.1.3 ( #76 )
...
Fix old namespace. New writer tested with MPDF 6.1.3
2017-01-19 18:26:27 +09:00
Сергей Симонян
2aa7707826
Use `use` sections instead of fully qualified class names ( #69 )
2017-01-10 02:09:39 +09:00
Adrien Crivelli
1b0b609c30
Remove dead code
2017-01-05 12:29:30 +09:00
Adrien Crivelli
ec928d393f
Fix indentation as suggested by Scrunitizer
2017-01-05 12:26:20 +09:00
Adrien Crivelli
e9d03cc6d3
Apply Scrutinzer patches for spacing
2017-01-05 12:14:44 +09:00
Adrien Crivelli
c8a69dfb54
Fix comment #65
2017-01-05 11:11:18 +09:00
Roland Häder
3723bb825b
Added `Row::getWorksheet()` to expose row's bounded worksheet #59 , #60
2017-01-05 11:05:49 +09:00
Christian Schmidt
61408fc691
Properly format non-integer font sizes ( #66 )
...
The OOXML spec defines the font sizes (the `sz` element) as a double, so the value needs to be wrapped in `PHPExcel_Shared_String::FormatNumber()` to avoid breaking in non-English locales.
2017-01-04 17:27:42 +09:00
Adrien Crivelli
0c75d64817
Remove unused variables
2016-12-26 14:36:47 +09:00
Adrien Crivelli
8ce610eb59
Use correct declared debugLog
2016-12-26 13:59:31 +09:00
Adrien Crivelli
56245d558e
Use `::class` notation as much as possible
...
```
* ,
_/^\_
< >
* /.-.\ *
* `/&\` *
,@.*;@,
/_o.I %_\ *
* (`'--:o(_@;
/`;--.,__ `') *
;@`o % O,*`'`&\
* (`'--)_@ ;o %'()\ *
/`;--._`''--._O'@;
/&*,()~o`;-.,_ `""`)
* /`,@ ;+& () o*`;-';\
(`""--.,_0 +% @' &()\
/-.,_ ``''--....-'`) *
* /@%;o`:;'--,.__ __.'\
;*,&(); @ % &^;~`"`o;@(); *
/(); o^~; & ().o@*&`;&%O\
jgs `"="==""==,,,.,="=="==="`
__.----.(\-''#####---...___...-----._
'` \)_`"""""`
.--' ')
o( )_-\
`"""` `
```
2016-12-26 13:21:12 +09:00
Roman Kravchuk
a045a446d5
fix namespace for ReflectionObject class
...
PHP Fatal error: Class 'PhpOffice\PhpSpreadsheet\Writer\ReflectionObject' not found in PhpSpreadsheet/src/PhpSpreadsheet/Writer/Ods.php on line 151
2016-12-26 12:27:40 +09:00
John Doe
a39d71ec16
Fix attaching drawing for xls
...
FIX #53 , #61
2016-12-26 12:20:59 +09:00
Adrien Crivelli
af82e266c0
A few more manual code style fixes for phpcs
2016-12-23 00:08:55 +09:00
Adrien Crivelli
8c66afe39a
Upgrade to PHP-CS-Fixer 2.0
2016-12-22 23:46:26 +09:00
Adrien Crivelli
0de994c998
Fix `IMSQRT()` tests on PHP 7.1
2016-12-22 22:54:58 +09:00
MarkBaker
03f96ab6d8
GH-57 Bug fix in Border.php
2016-12-18 23:06:10 +00:00
Arthur-min
a5c21a7b43
Exxcel 2003 XML working pattern property ( #54 )
2016-12-14 22:21:16 +09:00
Enyby
30a5e4b893
Fixed bug on load XML with column filter
...
`continue;` break columnID increment. Another problem can be on Merged cells.
2016-12-14 22:03:21 +09:00
DCoderLT
2484a03f19
Fix fatal error when `RichText` extract container cell's font
...
`RichText` tries to extract container cell's font via
`Cell->getParent()->getStyle(...)`, which crashes because
`getParent()` does not return a worksheet. Changing it to
`getWorksheet()` fixes the problem.
2016-12-14 21:56:57 +09:00
jacobsreynolds
720fb3eff5
Read background color of cells from HTML file
...
If a <td> in HTML has a bgcolor attribute, it is then applied to the spreadsheet file
2016-12-14 21:40:59 +09:00
Arthur Miniconi
ab7aa68300
Excel2003 XML parse Interior Pattern property
2016-12-14 21:29:36 +09:00
golodnyi
a6a709a4ba
Not relevant parameters when calling functions
2016-12-09 12:33:41 +09:00
Adrien Crivelli
c8a8fd2610
Stricter check whether file exists before reading
...
This should avoid issues when user submit a non-existing filename
that is wrongly identified as CSV.
Typically https://github.com/PHPOffice/PHPExcel/issues/1076 and
https://github.com/PHPOffice/PHPExcel/issues/1078 could have been
avoided.
2016-12-09 00:15:22 +09:00
golodnyi
5e03e282e5
Duplicate case in switch
2016-12-08 19:22:58 +09:00
mattkibbler
62345ef4da
Allow start and end date of DATEDIF function to be the same
2016-12-04 19:04:10 +09:00
Nikolay Ninkov
a7155d8890
Partial localization of functions in Bulgarian
2016-12-04 18:48:21 +09:00
Adrien Crivelli
3bd0f6f985
Fix autofilter cloning across PHP versions
...
Avoid indirect access variable ambiguity across PHP 5.6 and PHP 7.0
2016-12-04 16:44:40 +09:00
Matthias Van Woensel
39b8dbd0a1
Adding float cast to MOD function
...
If $a or $b are not strings, you can get an error that fmod needs param 1 ($a) to be of type double.
MS Excel does not fall over when you insert an empty string in MOD, so I'm guessing PHPExcel should do the same?
2016-12-04 16:12:51 +09:00
Gemorroj
48a6e86adc
Added missing variables
2016-12-04 15:58:21 +09:00
Herman M. Hofman
b964788d5c
FIX PHP Fatal Error on an invalid Blip Field.
...
For (still) unknown reasons, PHPExcel detects a wrong field type.
If there is no BSE Index, we will fail here and other fields are not read.
So if the BSE Index < 1, continue with the next field.
TODO: Why is there no BSE Index?
Is this a new Office Version?
Password protected field?
More likely : a uncompatible picture
PHP Notice: Undefined offset: -1 in Classes/PHPExcel/Reader/Excel5.php on line 1063
PHP Fatal error: Call to a member function getBlipType() on a non-object in Classes/PHPExcel/Reader/Excel5.php on line 1064
2016-12-04 15:47:20 +09:00
josch1710
c1f5bdba5d
removeColumn doesn't remove all cells
...
removeColumn doesn't remove all cells, because CacheBase::deleteCacheData only unsets cell data if they are objects.
But cached cell data could be arrays.
I moved the unset from inside the if block (line 150 ff) to after the if block.
2016-12-04 15:33:47 +09:00
appelflap
3b4f54722f
Also check Library Path
...
LibraryName was being checked twice.
2016-12-04 15:28:50 +09:00
Adrien Crivelli
6d44884e19
Drop deprecated methods #22
2016-12-04 15:06:31 +09:00
Adrien Crivelli
e6d8362fb2
Some functions were not callable because of wrong declaration
2016-12-03 14:51:04 +09:00
Adrien Crivelli
22b9a3f66f
Drop PHP version checked according to our new requirement of PHP 5.5
2016-12-03 11:35:04 +09:00
Adrien Crivelli
5b7d6cc524
Remove obsolete `##VERSION##` and `##DATE##` that are not managed by svn anymore
2016-12-03 11:31:35 +09:00
Adrien Crivelli
4b0d3c8c1c
Drop the old `\PHPExcel_Calculation_Functions::VERSION()`
...
This fucntion does not exist in Excel and it is non trivial to implement
without svn. Thus it was incorrect for many releases.
2016-12-03 11:19:22 +09:00
Adrien Crivelli
854f7e838d
Support `#N/A` values in charts
...
FIX #50
2016-12-03 10:49:03 +09:00
Adrien Crivelli
268fc1a4c4
Fix unit tests for PHP < 7.0
2016-11-28 01:58:10 +09:00
Adrien Crivelli
5ad6ced95c
Introduce a tool to migrate from PHPExcel to PhpSpreadsheet
2016-11-28 00:13:57 +09:00
Adrien Crivelli
e6bbc4bd25
Convert all line ending to unix style
2016-11-27 15:45:15 +09:00
Adrien Crivelli
f74fde155f
Remove non-obvious BaseReader's dependency
...
BaseReader called `isValidFormat` despite it doesn't require it to be
implemented. Instead we replaced `isValidFormat` by a proper implementation
of `canRead` in each classes. This also remove the semantic amibguity between
those two methods.
FIX #32
2016-11-27 14:29:25 +09:00
Green Wang
8c58385d6c
Fix cant get right format chinese date format error
...
modify preg expression in NumberFormat.php
[DBNum1][$-804]yyyy"年"m"月"d"日";@
[DBNum1][$-804]yyyy"年"m"月";@
[DBNum1][$-804]m"月"d"日";@
FIX #44
2016-11-27 13:39:45 +09:00
tomaszsita
939f24ecb4
Calculate column auto width for merged cells (if horizontal, 1-column wide merge only)
...
This is to fix the situation when cells merged vertically are ignored in columns auto size calculations.
I also removed $calculateMergeCells param as it wasn't used and I believe the only situation when you
want to calculate the width of merged columns has been covered here (and there's no reason to not calculate it).
FIX #46
2016-11-25 17:54:56 +09:00
Adrien Crivelli
6d8ba6f7f0
Revert references to classes in global namespace
...
Some references to classes were incorrectly assumed to be a reference
to self, whereas they were references to classes in global namespace
outside of this project.
FIX #37
2016-11-16 22:43:44 +09:00
Alexander Kurilo
1df5f97a5b
Require GD for saving images in xls
...
GD is implicitly required for saving images anyway, this exception when
it's not loaded simply gives more information on what to do if the
execution flow reaches a places that depends on a function from GD.
2016-11-16 22:23:09 +09:00
Alexander Kurilo
408da0c17a
Make HTML checks more strict
2016-11-16 22:21:30 +09:00
Roland Haeder
4b4831be07
Catch some invalid parameter (may come from damaged file) and throw exception. ( #39 )
...
Signed-off-by: Roland Häder <roland@mxchange.org>
2016-11-16 22:17:43 +09:00
Roland Haeder
296cc69f0a
Avoid array_key_exists(), unless we need to check NULL values ( #35 )
...
```php
<?php
$array = array(
'str' => 'foo',
'num' => 12345,
'null' => NULL,
);
print intval(isset($array['null'])) . PHP_EOL;
print intval(array_key_exists($array['null'])) . PHP_EOL;
print intval(isset($array['num'])) . PHP_EOL;
print intval(array_key_exists($array['num'])) . PHP_EOL;
print intval(isset($array['str'])) . PHP_EOL;
print intval(array_key_exists($array['str'])) . PHP_EOL;
```
Only for this special case, you need array_key_exists(), else avoid it as it is
painfully slow and hurts your performance.
Signed-off-by: Roland Häder <roland@mxchange.org>
2016-10-26 20:01:11 +09:00
Adrien Crivelli
fb1d280e82
Remove all references to "hack" from the source code
...
Remove the term "hack" from the source code to prevent it
from being flagged by malware scanners and audit tools (such as
the very popular myJoomla.com for Joomla sites)
2016-10-24 20:24:56 +09:00
Phil Taylor
ec9e548153
Remove the term "hacked by" from the source code
...
Remove the term "hacked by" from the source code to prevent it
from being flagged by malware scanners and audit tools (such as
the very popular myJoomla.com for Joomla sites)
2016-10-24 19:50:13 +09:00
Adrien Crivelli
02e233634a
All constants are uppercase #25
2016-10-07 09:52:04 +09:00
Max
d84d9ba730
Fix spelling and constant name used as default argument ( #25 )
2016-10-07 08:16:13 +09:00
Adrien Crivelli
e2e982f98a
Rename OOCalc and OpenDocument into Ods
...
FIX #6
2016-10-06 21:07:57 +09:00
Adrien Crivelli
4337de4930
Rename Excel5 into Xls
...
FIX #4
2016-10-06 20:49:41 +09:00
Adrien Crivelli
39b55ded30
Rename Excel2007 into Xlsx
...
FIX #5
2016-10-06 20:39:10 +09:00
Adrien Crivelli
2b41bdbf4e
Loosen type checking to allow both use-cases
...
Previously it crashed when loading an file containing conditional formatting
FIX #21
2016-10-05 14:06:39 +09:00
CrazyBite
c94539c86c
Fix reading print area with sheet name containing a comma
2016-10-03 17:18:38 +09:00
Balint Kovacs
c99ec67d68
Fix hyperlink reading in ODS files
2016-10-03 07:21:28 +09:00
Adrien Crivelli
e95a267034
Apostrophes in sheet names prevented save
...
If a sheet name included an apostrophe and the sheet had print area
defined then the spreadsheet could not be saved because the cell
coordinates were mangled, eg:
'Fiche d''action'!$A$1:$N$19
wrongly became:
'Fiche d'$A$1:$N$19
2016-10-02 20:21:13 +09:00
Enyby
d791a0bbeb
Fix signature detection on Excel2003XML
...
Signature can be with single quotes:
```
<?xml version='1.0'?>
<?mso-application progid='Excel.Sheet'?>
```
2016-10-02 17:44:17 +09:00
Enyby
102c19356f
Fix bug with convert int
...
Some bugged file have $data less from four bytes. This fix append zero bytes if it happens.
It is prevent errors on access to need indexes.
2016-10-02 17:40:26 +09:00
Сергей Симонян
5a3e2435c3
Fix undefined index exception in readRow()
2016-10-02 17:24:59 +09:00
Adrien Crivelli
ae1b85f961
Fix code style
2016-10-02 15:21:52 +09:00
Adrien Crivelli
8c4c11346b
Fix unit tests for DATEDIF()
...
Leap years where not properly taken into consideration
2016-10-02 14:46:11 +09:00
Adrien Crivelli
8061f7516e
Rename SECONDOFMINUTE into SECOND for consistency
2016-10-02 09:43:13 +09:00
Adrien Crivelli
75c34f2694
Rename MINUTEOFHOUR into MINUTE for consistency
2016-10-02 09:41:20 +09:00
Adrien Crivelli
382d15a5c3
Rename DAYOFWEEK into WEEKDAY for consistency
2016-10-02 09:35:50 +09:00
Adrien Crivelli
9629151e45
Rename WEEKOFYEAR into WEEKNUM for consistency
2016-10-01 22:44:33 +09:00
Adrien Crivelli
23fbc845dd
Fix unit tests for WEEKNUM()
2016-10-01 22:33:12 +09:00
Сергей Симонян
1a2a6816fb
Fix undefined index exceprtion in readRow()
...
It's possible undefined index exception in $this->mapCellXfIndex.
2016-09-09 00:42:24 +09:00
Marcus Bointon
39ea4eea98
Don't truncate to 64k in mb_str_replace
2016-09-05 23:23:49 +02:00
MarkBaker
fb2edfdacf
Merge branch 'develop' of https://github.com/PHPOffice/PhpSpreadsheet into develop
...
# Conflicts:
# src/Autoloader.php
2016-08-31 21:58:08 +01:00
MarkBaker
fae27a6d63
As iconv is now enabled by default in PHP, make it a requirement, and modify strig functions to use it where appropriate
2016-08-31 21:52:42 +01:00
Adrien Crivelli
47cde0dadc
Introduce vendor prefix `PhpOffice` to namespace
2016-09-01 02:20:47 +09:00
Adrien Crivelli
2922a13764
Reorganize code samples
...
This introduce a helper class that should be used to log things,
avoiding a lot of boilerplate code.
Also all output are made in /tmp folder instead of beside the script
itself. This is because there is a high chance that the folder containing
the script is not writtable by webserver. So using the /tmp folder
makes it more likely to works in a variety of setup.
2016-09-01 01:17:13 +09:00
Adrien Crivelli
c3bb4245b3
Register autoload as the first in the list
...
Yii framework v1.1 has it's own autoloader and its autoloader throws
an error, when it can't find class. When this library initializes, it
register its own autoloader, but places it at the end of autoload
queue. So when I use library with Yii 1.1, I just face an error:
`include(PHPExcel_Shared_String.php): failed to open stream: No such file or directory`
because Yii's autoloader runs first and tries to include class file
directly.
Registering our autoloader first avoid this.
2016-08-30 00:51:51 +09:00
Nikolay Ivanov
98e00e8843
iconv illegal character fix
2016-08-26 22:52:47 +09:00
Adrien Crivelli
67d5263004
Fix code style
2016-08-26 22:48:57 +09:00
Synchro
c50814ac4e
Remove unused local var, function returns void anyway
2016-08-26 22:44:55 +09:00
Synchro
30e0451bc3
Fix duplicate array keys in ptg indices
...
Reference: http://read.pudn.com/downloads173/sourcecode/delphi_control/805790/DevExpress/DevExpressComm/cxExcelConst.pas__.htm
2016-08-26 22:41:14 +09:00
Synchro
16a8162a14
Fix duplicate array key
2016-08-26 22:32:55 +09:00
Carlos Montiers
6acd403251
In memory gzip cache method use max compression
2016-08-26 22:09:46 +09:00
Carlos Montiers
d8850176a1
php://temp maxmemory must be expressed in bytes
2016-08-26 22:07:49 +09:00
Adrien Crivelli
91417ad1c3
Delete debug and commented out code
2016-08-26 18:08:26 +09:00
Adrien Crivelli
04d6182a81
Remove unused variables
2016-08-26 15:05:40 +09:00
Adrien Crivelli
b42bafcfe7
Apply Scrutinizer patches for doc comments
2016-08-26 13:40:01 +09:00
Adrien Crivelli
cb0930c016
Apply Scrutinizer patches for indentation
2016-08-25 19:35:29 +09:00
Adrien Crivelli
a85f1bdbed
Apply Scrutinizer patches for spacing
2016-08-25 18:46:02 +09:00
Adrien Crivelli
027792ed09
Fix wrong class names that were incorrectly migrated
2016-08-25 13:39:26 +09:00
Adrien Crivelli
942ad72d2a
Complete a few more namespace renaming
2016-08-25 11:43:27 +09:00
Adrien Crivelli
ba70544846
Fix crash when reading HTML files
2016-08-25 11:14:03 +09:00
Adrien Crivelli
7a6c5b0d1b
Fix code style
2016-08-25 11:13:49 +09:00
MarkBaker
e0a9f9e1ec
Merge branch 'feature/gh-7' into develop
...
# Conflicts:
# src/PhpSpreadsheet/Shared/Date.php
2016-08-17 00:40:55 +01:00
MarkBaker
f8c3363de3
Fix some Case-sensitivity problems
2016-08-17 00:36:24 +01:00
Adrien Crivelli
09d456e477
Introduce PHP-CS-Fixer for stricter code style rules
...
PHP-CS-Fixer allow to check different things than phpcs and it allows
code to be more consistent. Configuration can be changed in `.php_cs`
2016-08-17 00:33:57 +09:00
Adrien Crivelli
539a89a918
Rename namespace `PHPExcel` to `PhpSpreadsheet`
...
This also fix a few bugs that were introduced when migrating to
namespace. Some non-namespaces classes were leftover
FIX #15
2016-08-16 23:24:47 +09:00
Adrien Crivelli
a6c6064348
Replace mentions of CodePlex by GitHub
2016-08-16 22:02:03 +09:00
MarkBaker
91573b5c93
Split PHPToExcel logic for different input types
2016-08-14 22:36:30 +01:00
MarkBaker
aa97bb3e45
Merge branch 'develop' into feature/gh-7
...
# Conflicts:
# tests/PhpSpreadsheet/Shared/DateTest.php
2016-08-14 15:41:50 +01:00
MarkBaker
f0e167c182
Unit tests for modified Date functions
2016-08-14 15:35:43 +01:00
Adrien Crivelli
ce2ce3414b
Refactor arguments with default values to be at the end of the argument list
2016-08-14 14:09:55 +09:00
Adrien Crivelli
ea513d9c1b
Autofix style code with phpcs
2016-08-14 13:55:34 +09:00
MarkBaker
850594c4d2
Merge branch 'develop' into feature/gh-7
...
# Conflicts:
# tests/PhpSpreadsheet/Shared/DateTest.php
# tests/rawTestData/Shared/DateTimeExcelToPHP1900.data
# tests/rawTestData/Shared/DateTimeExcelToPHP1900Timezone.data
# tests/rawTestData/Shared/DateTimeExcelToPHP1904.data
# unitTests/rawTestData/Shared/DateTimeExcelToPHP1900.data
# unitTests/rawTestData/Shared/DateTimeExcelToPHP1904.data
# unitTests/rawTestData/Shared/DateTimeExcelToTimestamp1900.data
# unitTests/rawTestData/Shared/DateTimeExcelToTimestamp1904.data
2016-08-14 02:07:10 +01:00
MarkBaker
e149c1f191
Adjustments to DateTime tests
2016-08-13 20:21:45 +01:00
MarkBaker
fd2df82faf
Merge branch 'develop' into feature/gh-17
2016-08-13 16:59:03 +01:00
Adrien Crivelli
80af21d962
Fix unit tests for date
...
Unit tests were broken in commit 745499cc55
2016-08-14 00:31:09 +09:00
Adrien Crivelli
49d821f093
Autofix style code with phpcs
...
The entire project now pass phpcs check
2016-08-13 23:31:22 +09:00
MarkBaker
8569f04090
Fixes to ZipArchive cass when PCLZip being used
...
Fixes to default arguments when typehinted arguments in Chart writer are null values
Fix to gitignore for Examples folder/subfolders
2016-08-13 14:52:49 +01:00
MarkBaker
2da06e5b03
Another copy/paste error that has somehow sneaked into the date code
2016-08-13 13:38:10 +01:00
MarkBaker
558da2269d
Fix a couple of errors that have sneaked into the date code, plus some minor problems in radar/scatter chart examples, and a spurious html comment that had sneaked into spreadsheet
2016-08-13 13:28:29 +01:00
MarkBaker
3886999957
Merge branch 'develop' of https://github.com/PHPOffice/PhpSpreadsheet into develop
2016-08-13 11:50:02 +01:00
MarkBaker
745499cc55
Changes to Date/Time conversion functions to use DateTime objects internally rather than unix timestamps;
...
Changes to Date/Time methods to make them more intuitive and correct (eg `excelToTimestamp` rather than `excelToPHP`)
TODO - Still need to write unit tests, and convert Examples to use the new names
2016-08-13 11:49:01 +01:00
Mark Baker
9ecfc0c8b4
Merge pull request #10 from PowerKiKi/unit-tests-bessel
...
Fix unit tests for BESSEL functions
2016-08-13 11:40:19 +01:00
Mark Baker
98ccf97e55
Merge pull request #12 from PowerKiKi/unit-tests-base-conversion
...
Fix unit tests for all base conversion functions
2016-08-13 11:40:02 +01:00
MarkBaker
30bb53ebf8
Double call of PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::stringFromColumnIndex(0)) resulting in `PHP Warning: A non-numeric value encountered"
2016-08-05 00:22:19 +01:00
Adrien Crivelli
8fc29bd1b1
Fix unit tests for all base conversion functions
...
This include cases were artificial constraints were not checked
(eg: between -512 and 511 for `DECBIN`) and some bugs were 32
bits platform were assumed.
The following are covered:
`BIN2DEC`, `BIN2HEX`, `BIN2OCT`,
`DEC2BIN`, `DEC2HEX`, `DEC2OCT`,
`HEX2BIN`, `HEX2DEC`, `HEX2OCT`,
`OCT2BIN`, `OCT2DEC`, `OCT2HEX`
2016-08-01 02:48:51 +09:00
Adrien Crivelli
3a38cc8f0a
Fix unit tests for BESSEL functions
...
Expected data were re-written by using LibreOffice 5 as a reference.
We kept only 8 decimals, because this is the precision used in tests,
and it's easier to read without scientific notation.
Also a few expected values were wrong so they were changed. The correct
expected values were confirmed by both LibreOffice 5 and wolframalpha.com.
Finally fixed an actual bug in code were a NaN value were returned instead of
the correct `#NUM!`.
2016-07-31 23:11:54 +09:00
MarkBaker
2291748a83
Fix for multiple worksheets, all with merge cells, in HTML Writer
2016-07-14 23:09:19 +01:00
MarkBaker
1702d95333
Fix for XML settings, together with unit tests
2016-06-05 17:03:42 +01:00
Progi1984
36a9068b38
#401 : PHPUnit Fixes (Calculation > LookupRef)
2016-05-20 08:41:09 +02:00
Progi1984
6faed3bd58
#463 : Patch @domic-olga vlookup - incorrect value when not exact match
2016-05-19 14:38:50 +02:00
Progi1984
20d007abb1
#401 : PHPUnit Fixes (Calculation > Engineering)
2016-05-19 12:49:15 +02:00
Progi1984
248bdbf841
#401 : PHPUnit Fixes (Calculation > Engineering)
2016-05-19 12:31:40 +02:00
Progi1984
14c9fac305
Merge pull request #900 from ValentinNikolaev/patch-2
...
Fix: replace String with StringHelper in Font
2016-05-19 08:50:49 +02:00
Progi1984
98f7d4bf08
#401 : PHPUnit Fixes (Calculation > DateTime)
2016-05-19 08:49:09 +02:00
Valentin I. Nikolaev
5e4e6fe3ee
Fix: replace String with StringHelper in Font
...
We use StringHelper::countCharacters, not String::countCharacters
2016-05-19 05:33:22 +03:00
Progi1984
104d8362ec
#401 : PHPCS Fixes & Some PHPUnit Fixes
2016-05-18 13:51:56 +02:00
Progi1984
259ce457f3
#401 : PHPCS Fixes & Some PHPUnit Fixes
2016-05-18 13:37:00 +02:00
Progi1984
dffeb25a5f
#401 : PHPCS Fixes
2016-05-18 09:02:39 +02:00
Progi1984
05643d16d5
#401 : PHPCS (Calculation\MathTrig & Logical)
2016-05-14 18:22:59 +02:00
Progi1984
12590bbf1e
#401 : PHPCS (Calculation\Functions)
2016-05-14 10:29:38 +02:00
Progi1984
69e168271a
#401 : PHPCS (Shared\StringHelper)
2016-05-14 09:51:58 +02:00
Progi1984
c0fe7c275d
#401 : Fix for JpGraph
2016-05-14 09:43:02 +02:00
Progi1984
3942965fc4
#401 : Fix for JpGraph
2016-05-14 09:40:29 +02:00
Progi1984
ee4cb020f1
#401 : Fix for TcPDF & MPDF
2016-05-13 22:25:10 +02:00
Progi1984
984bf1f7de
#401 : Fix for MPDF
2016-05-13 22:23:48 +02:00
Progi1984
0521be04fa
#401 : Fix for TcPDF
2016-05-13 22:23:11 +02:00
Progi1984
2fed2de62d
#401 : Fix for PHPCS
2016-05-13 22:06:18 +02:00
MarkBaker
3bb541c610
GH-879 Bug in file PHPExcel/Reader/CSV.php
...
Code logic identifying a defined separator when no separator is explicitly defined
Case-insensitive check when separator is explicitly defined
2016-04-14 23:20:07 +01:00
MarkBaker
343955453a
General: (sim642) Pull Request 489 - Implement actual timezone adjustment into PHPExcel_Shared_Date::PHPToExcel
2016-03-31 23:50:57 +01:00
MarkBaker
18a45ee7a1
Bugfix: (vitalyrepin) Pull Request 869 - c:max and c:min elements shall NOT be inside c:orientation elements
2016-03-31 23:26:45 +01:00
Progi1984
727ab1ef34
#401 : Support for namespaces
2016-03-22 22:40:11 +01:00
Progi1984
c5b352169c
#401 : Support for namespaces
2016-03-22 22:20:22 +01:00
Progi1984
8d9221e711
#401 : Support for namespaces
2016-03-22 16:56:25 +01:00
Progi1984
2e396b7416
#401 : Support for namespaces
2016-03-22 16:56:11 +01:00
Progi1984
7562cc8757
#401 : Support for namespaces
2016-03-22 16:56:04 +01:00
Progi1984
d0d018b661
#401 : Support for namespaces
2016-03-22 16:55:55 +01:00
Progi1984
27925954fb
#401 : Support for namespaces
2016-03-22 16:55:47 +01:00
Progi1984
2c245ab725
#401 : Support for namespaces
2016-03-22 16:55:37 +01:00
Progi1984
dc3e96091a
#401 : Support for namespaces
2016-03-22 16:55:24 +01:00
Progi1984
c866be3c7a
#401 : Support for namespaces
2016-03-22 16:44:56 +01:00
Progi1984
f546be620e
#401 : Support for namespaces
2016-03-22 16:26:31 +01:00
Progi1984
86bfdcba15
Merge remote-tracking branch 'origin/1.9' into 1.9
2016-03-22 16:11:20 +01:00
Progi1984
54ae9901f5
#401 : Support for namespaces
2016-03-22 16:11:05 +01:00
MarkBaker
fcaf73e77f
Merge branch '1.9' of https://github.com/PHPOffice/PHPExcel into 1.9
2016-03-22 14:50:28 +00:00
Progi1984
95e6c5e264
#401 : Support for namespaces
2016-03-22 15:35:50 +01:00
Progi1984
73ac0aee35
Fix some errors with samples
2016-03-22 15:19:00 +01:00
MarkBaker
710ab744db
General: (rentalhost) Work Item GH-575 - Excel 2007 Reader freezes because of conditional formatting
2016-03-22 13:36:24 +00:00
Progi1984
6e222bbdde
Fix some errors with samples
2016-03-22 14:25:49 +01:00
Progi1984
114fc00763
Fix some PHPCS errors
2016-03-22 10:08:48 +01:00
Progi1984
03f053bf77
Fix PHPCS Error
2016-03-18 11:18:31 +01:00
MarkBaker
2e0e9b2398
Detect the presence of a sep=; line in CSV imports, and set the delimiter accordingly
2016-03-17 23:05:14 +00:00
MarkBaker
b9ae7d1873
Allow inclusion of a sep=; line when creating csv files
2016-03-17 23:04:34 +00:00
MarkBaker
ee73d559b9
Fix missing ; in last commit
2016-03-07 07:58:41 +00:00
MarkBaker
0c3a5c2e40
Allow formatted strings as argument in PHPToExcel date conversion
2016-03-06 23:27:33 +00:00
MarkBaker
4a67f086a1
Feature: (Tomino2112) Work Item GH-808 - MemoryDrawing not working in HTML writer
...
Manual merge of Pull Request
2016-03-01 23:16:13 +00:00
MarkBaker
fa98c373df
Allow HYPERLINK() function to set the tooltip, and add extra examples of setting hyperlinks either through PHPExcel methods or using the HYPERLINK() function
2016-03-01 12:33:50 +00:00
MarkBaker
6db66a0da4
Docblock fix
2016-02-29 09:33:09 +00:00
MarkBaker
141d64d6a2
Minor bugfixes and documentation changes
2016-01-13 22:38:34 +00:00
MarkBaker
189a5c439e
Refactor mappers out from Excel5 Reader completely
2016-01-01 18:21:24 +00:00
MarkBaker
70a557346e
Refactor colour mapping for Excel5 Reader
2015-12-30 02:18:30 +00:00
MarkBaker
6518b75796
Start work on implementing an option to ignore "empty" cells when reading a file
2015-12-30 00:24:48 +00:00
MarkBaker
28d3b97d0d
Missing Reader/Writer abstracts
2015-12-29 00:00:12 +00:00
MarkBaker
1926c652db
Modify getCell() methods to allow creating a new cell if the selected cell doesn't exist as an option
2015-12-28 23:59:09 +00:00
MarkBaker
0025318d7e
Minor tweaks
2015-12-06 16:08:37 +00:00
MarkBaker
6dc0c1f1b6
Additional codepages
2015-11-09 23:33:26 +00:00
MarkBaker
84011f8d57
Initial implementation of SUMIFS() function
2015-11-09 21:39:35 +00:00
MarkBaker
bb7b48d94c
Fix to MEDIAN() function
2015-10-28 00:47:15 +00:00
MarkBaker
26cf4c0709
Remove savedPrecision from Calculation Engine
2015-10-15 23:07:36 +01:00
MarkBaker
0985caf352
Fix for problem with xlsx files overriding the reserved number format codes below 164 with custom codes
2015-10-14 23:24:34 +01:00
MarkBaker
450e1672f0
Fix to allow calculate formula against a workbook, without passing in a cell
2015-09-17 23:57:01 +01:00
MarkBaker
be9f22cc34
Fix to HTML margins
2015-09-14 23:05:02 +01:00
MarkBaker
818413ebe0
We shouldn't override any of the built-in MS Excel values (values below id 164)
...
But there's a lot of naughty homebrew xlsx writers that do use "reserved" id values that aren't actually used
So we make allowance for them rather than lose formatting masks
2015-08-14 19:50:49 +01:00
MarkBaker
8af8d3b460
Fix to HTML generation with charts that fall outside of the main data area, and fix to show trailing `/` in folders for the jpgraph in examples
2015-08-03 19:50:34 +01:00
MarkBaker
21f5db0ca5
Additional work on number format masks
2015-08-03 00:33:46 +01:00
MarkBaker
7c0208bd26
Handle some discrepancies between the ECMA standard and actual internal number formats used by MS Excel
2015-08-02 00:40:42 +01:00
MarkBaker
d7ef6810a4
Improved masking for number format handling, particularly for datetime masks
2015-08-01 00:39:10 +01:00
MarkBaker
f968a95ca5
Bugfix: Work Item GH-554 - Whitespace after toRichTextObject()
2015-07-15 23:23:20 +01:00
MarkBaker
67dee17d67
Initial namespacing for Excel2007 and Excel5 Writers
2015-07-08 23:31:58 +01:00
Frans Saris
daf2482dd6
[TASK] Namespaced /Writer/ Classes
2015-07-01 13:26:15 +02:00
MarkBaker
ed087dd396
More namespacing work
2015-06-03 08:21:50 +01:00
MarkBaker
f1e8ec1f4d
Finish namespacing the Readers
2015-06-03 00:10:08 +01:00
MarkBaker
0d956534eb
Another large chunk of namespacing work
2015-06-02 00:07:00 +01:00
MarkBaker
c86a72ac1a
Another chunk of namespacing work
2015-06-01 21:08:48 +01:00
MarkBaker
ebca5d1a57
Start work on namespacing Reader classes
2015-05-31 23:24:19 +01:00
MarkBaker
a39e15f49d
Fix a couple of errors introduced with the last namespace changes
2015-05-30 16:54:51 +01:00
MarkBaker
621fc9aec7
namespacing in calculation functions
2015-05-30 15:56:59 +01:00
MarkBaker
ee04f30d67
Another block of work on namespacing
2015-05-30 14:06:37 +01:00
MarkBaker
54d2f72a0a
More namespacing work
2015-05-30 12:25:17 +01:00
MarkBaker
0dafaea059
Work on rewriting unit tests for the new folder structure (calling bootstrap) and json input files
2015-05-29 21:35:35 +01:00
MarkBaker
53584ec9a3
Unit tests for Cell classes, modification to use json-format in raw data provider
2015-05-28 08:29:44 +01:00
MarkBaker
fe51b5e4fa
Update style classes for namespacing
2015-05-27 23:16:28 +01:00
MarkBaker
85118eb030
Changes to folder structures to bring PHPExcel in line with other PHPOffice projects
...
Additional namespacing work on PHPExcel core
2015-05-26 21:21:05 +01:00