diff --git a/.php_cs.dist b/.php_cs.dist
index 88f7f8bb..23216924 100644
--- a/.php_cs.dist
+++ b/.php_cs.dist
@@ -56,7 +56,7 @@ return PhpCsFixer\Config::create()
'is_null' => ['use_yoda_style' => false],
'linebreak_after_opening_tag' => true,
'line_ending' => true,
- 'list_syntax' => ['syntax' => 'long'], // Stay compatiblew with PHP 5.6
+ 'list_syntax' => ['syntax' => 'short'],
'lowercase_cast' => true,
'lowercase_constants' => true,
'lowercase_keywords' => true,
@@ -172,7 +172,7 @@ return PhpCsFixer\Config::create()
'switch_case_semicolon_to_colon' => true,
'switch_case_space' => true,
'ternary_operator_spaces' => true,
- 'ternary_to_null_coalescing' => false, // Cannot use that with PHP 5.6
+ 'ternary_to_null_coalescing' => true,
'trailing_comma_in_multiline_array' => true,
'trim_array_spaces' => true,
'unary_operator_spaces' => true,
diff --git a/.travis.yml b/.travis.yml
index 7c55d592..b9ad8de8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -2,16 +2,15 @@ language: php
dist: trusty
php:
- - 5.6
- - 7.0
- 7.1
- 7.2
- 7.3
+ - 7.4snapshot
matrix:
fast_finish: true
allow_failures:
- - php: 5.6
+ - php: 7.4snapshot
cache:
directories:
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 96574fe7..20819876 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -21,6 +21,7 @@ and this project adheres to [Semantic Versioning](https://semver.org).
- Fix number format masks containing named colours that were being misinterpreted as date formats; and add support for masks that fully replace the value with a full text string [Issue #1009](https://github.com/PHPOffice/PhpSpreadsheet/issues/1009)
- Stricter-typed comparison testing in COUNTIF() and COUNTIFS() evaluation [Issue #1046](https://github.com/PHPOffice/PhpSpreadsheet/issues/1046)
- COUPNUM should not return zero when settlement is in the last period - [Issue #1020](https://github.com/PHPOffice/PhpSpreadsheet/issues/1020) and [PR #1021](https://github.com/PHPOffice/PhpSpreadsheet/pull/1021)
+- Fix handling of named ranges referencing sheets with spaces or "!" in their title
## [1.8.2] - 2019-07-08
diff --git a/composer.json b/composer.json
index 6f9fd9c3..3043f8fb 100644
--- a/composer.json
+++ b/composer.json
@@ -35,11 +35,11 @@
"php-cs-fixer fix --ansi"
],
"versions": [
- "phpcs --report-width=200 samples/ src/ tests/ --ignore=samples/Header.php --standard=PHPCompatibility --runtime-set testVersion 5.6- -n"
+ "phpcs --report-width=200 samples/ src/ tests/ --ignore=samples/Header.php --standard=PHPCompatibility --runtime-set testVersion 7.1- -n"
]
},
"require": {
- "php": "^5.6|^7.0",
+ "php": "^7.1",
"ext-ctype": "*",
"ext-dom": "*",
"ext-gd": "*",
@@ -59,14 +59,13 @@
},
"require-dev": {
"tecnickcom/tcpdf": "^6.2",
- "phpunit/phpunit": "^5.7",
- "doctrine/instantiator": "^1.0.0",
"dompdf/dompdf": "^0.8.0",
"mpdf/mpdf": "^7.0.0",
"jpgraph/jpgraph": "^4.0",
"friendsofphp/php-cs-fixer": "@stable",
"phpcompatibility/php-compatibility": "^8.0",
- "squizlabs/php_codesniffer": "^3.3"
+ "squizlabs/php_codesniffer": "^3.3",
+ "phpunit/phpunit": "^7.5"
},
"suggest": {
"mpdf/mpdf": "Option for rendering PDF with PDF Writer",
@@ -84,4 +83,4 @@
"PhpOffice\\PhpSpreadsheetTests\\": "tests/PhpSpreadsheetTests"
}
}
-}
\ No newline at end of file
+}
diff --git a/composer.lock b/composer.lock
index a23c7f8d..6b1ba8ab 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "d70247696f417581626dde9641b53bdc",
+ "content-hash": "669a432d9ce5fef80535c0aae2e48b9b",
"packages": [
{
"name": "markbaker/complex",
@@ -397,32 +397,34 @@
},
{
"name": "doctrine/instantiator",
- "version": "1.0.5",
+ "version": "1.2.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
+ "reference": "a2c590166b2133a4633738648b6b064edae0814a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/a2c590166b2133a4633738648b6b064edae0814a",
+ "reference": "a2c590166b2133a4633738648b6b064edae0814a",
"shasum": ""
},
"require": {
- "php": ">=5.3,<8.0-DEV"
+ "php": "^7.1"
},
"require-dev": {
- "athletic/athletic": "~0.1.8",
+ "doctrine/coding-standard": "^6.0",
"ext-pdo": "*",
"ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
+ "phpbench/phpbench": "^0.13",
+ "phpstan/phpstan-phpunit": "^0.11",
+ "phpstan/phpstan-shim": "^0.11",
+ "phpunit/phpunit": "^7.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "1.2.x-dev"
}
},
"autoload": {
@@ -442,12 +444,12 @@
}
],
"description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
+ "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
"keywords": [
"constructor",
"instantiate"
],
- "time": "2015-06-14T21:17:01+00:00"
+ "time": "2019-03-17T17:37:11+00:00"
},
{
"name": "doctrine/lexer",
@@ -766,25 +768,28 @@
},
{
"name": "myclabs/deep-copy",
- "version": "1.7.0",
+ "version": "1.9.1",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e"
+ "reference": "e6828efaba2c9b79f4499dae1d66ef8bfa7b2b72"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e",
- "reference": "3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e",
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/e6828efaba2c9b79f4499dae1d66ef8bfa7b2b72",
+ "reference": "e6828efaba2c9b79f4499dae1d66ef8bfa7b2b72",
"shasum": ""
},
"require": {
- "php": "^5.6 || ^7.0"
+ "php": "^7.1"
+ },
+ "replace": {
+ "myclabs/deep-copy": "self.version"
},
"require-dev": {
"doctrine/collections": "^1.0",
"doctrine/common": "^2.6",
- "phpunit/phpunit": "^4.1"
+ "phpunit/phpunit": "^7.1"
},
"type": "library",
"autoload": {
@@ -807,7 +812,7 @@
"object",
"object graph"
],
- "time": "2017-10-19T19:58:43+00:00"
+ "time": "2019-04-07T13:18:21+00:00"
},
{
"name": "paragonie/random_compat",
@@ -858,6 +863,108 @@
],
"time": "2018-07-04T16:31:37+00:00"
},
+ {
+ "name": "phar-io/manifest",
+ "version": "1.0.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phar-io/manifest.git",
+ "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
+ "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
+ "shasum": ""
+ },
+ "require": {
+ "ext-dom": "*",
+ "ext-phar": "*",
+ "phar-io/version": "^2.0",
+ "php": "^5.6 || ^7.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Arne Blankerts",
+ "email": "arne@blankerts.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Heuer",
+ "email": "sebastian@phpeople.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "Developer"
+ }
+ ],
+ "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
+ "time": "2018-07-08T19:23:20+00:00"
+ },
+ {
+ "name": "phar-io/version",
+ "version": "2.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phar-io/version.git",
+ "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6",
+ "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^5.6 || ^7.0"
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Arne Blankerts",
+ "email": "arne@blankerts.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Heuer",
+ "email": "sebastian@phpeople.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "Developer"
+ }
+ ],
+ "description": "Library for handling version information and constraints",
+ "time": "2018-07-08T19:19:57+00:00"
+ },
{
"name": "phenx/php-font-lib",
"version": "0.5.1",
@@ -1095,29 +1202,35 @@
},
{
"name": "phpdocumentor/reflection-docblock",
- "version": "3.3.2",
+ "version": "4.3.1",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "bf329f6c1aadea3299f08ee804682b7c45b326a2"
+ "reference": "bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/bf329f6c1aadea3299f08ee804682b7c45b326a2",
- "reference": "bf329f6c1aadea3299f08ee804682b7c45b326a2",
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c",
+ "reference": "bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c",
"shasum": ""
},
"require": {
- "php": "^5.6 || ^7.0",
+ "php": "^7.0",
"phpdocumentor/reflection-common": "^1.0.0",
"phpdocumentor/type-resolver": "^0.4.0",
"webmozart/assert": "^1.0"
},
"require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^4.4"
+ "doctrine/instantiator": "~1.0.5",
+ "mockery/mockery": "^1.0",
+ "phpunit/phpunit": "^6.4"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "4.x-dev"
+ }
+ },
"autoload": {
"psr-4": {
"phpDocumentor\\Reflection\\": [
@@ -1136,7 +1249,7 @@
}
],
"description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2017-11-10T14:09:06+00:00"
+ "time": "2019-04-30T17:48:53+00:00"
},
{
"name": "phpdocumentor/type-resolver",
@@ -1187,16 +1300,16 @@
},
{
"name": "phpspec/prophecy",
- "version": "1.8.0",
+ "version": "1.8.1",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06"
+ "reference": "1927e75f4ed19131ec9bcc3b002e07fb1173ee76"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4ba436b55987b4bf311cb7c6ba82aa528aac0a06",
- "reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/1927e75f4ed19131ec9bcc3b002e07fb1173ee76",
+ "reference": "1927e75f4ed19131ec9bcc3b002e07fb1173ee76",
"shasum": ""
},
"require": {
@@ -1217,8 +1330,8 @@
}
},
"autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
+ "psr-4": {
+ "Prophecy\\": "src/Prophecy"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -1246,44 +1359,44 @@
"spy",
"stub"
],
- "time": "2018-08-05T17:53:17+00:00"
+ "time": "2019-06-13T12:50:23+00:00"
},
{
"name": "phpunit/php-code-coverage",
- "version": "4.0.8",
+ "version": "6.1.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d"
+ "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ef7b2f56815df854e66ceaee8ebe9393ae36a40d",
- "reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/807e6013b00af69b6c5d9ceb4282d0393dbb9d8d",
+ "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-xmlwriter": "*",
- "php": "^5.6 || ^7.0",
- "phpunit/php-file-iterator": "^1.3",
- "phpunit/php-text-template": "^1.2",
- "phpunit/php-token-stream": "^1.4.2 || ^2.0",
- "sebastian/code-unit-reverse-lookup": "^1.0",
- "sebastian/environment": "^1.3.2 || ^2.0",
- "sebastian/version": "^1.0 || ^2.0"
+ "php": "^7.1",
+ "phpunit/php-file-iterator": "^2.0",
+ "phpunit/php-text-template": "^1.2.1",
+ "phpunit/php-token-stream": "^3.0",
+ "sebastian/code-unit-reverse-lookup": "^1.0.1",
+ "sebastian/environment": "^3.1 || ^4.0",
+ "sebastian/version": "^2.0.1",
+ "theseer/tokenizer": "^1.1"
},
"require-dev": {
- "ext-xdebug": "^2.1.4",
- "phpunit/phpunit": "^5.7"
+ "phpunit/phpunit": "^7.0"
},
"suggest": {
- "ext-xdebug": "^2.5.1"
+ "ext-xdebug": "^2.6.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0.x-dev"
+ "dev-master": "6.1-dev"
}
},
"autoload": {
@@ -1298,8 +1411,8 @@
"authors": [
{
"name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
+ "role": "lead",
+ "email": "sebastian@phpunit.de"
}
],
"description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
@@ -1309,29 +1422,32 @@
"testing",
"xunit"
],
- "time": "2017-04-02T07:44:40+00:00"
+ "time": "2018-10-31T16:06:48+00:00"
},
{
"name": "phpunit/php-file-iterator",
- "version": "1.4.5",
+ "version": "2.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4"
+ "reference": "050bedf145a257b1ff02746c31894800e5122946"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/730b01bc3e867237eaac355e06a36b85dd93a8b4",
- "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/050bedf145a257b1ff02746c31894800e5122946",
+ "reference": "050bedf145a257b1ff02746c31894800e5122946",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": "^7.1"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^7.1"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.4.x-dev"
+ "dev-master": "2.0.x-dev"
}
},
"autoload": {
@@ -1346,7 +1462,7 @@
"authors": [
{
"name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
+ "email": "sebastian@phpunit.de",
"role": "lead"
}
],
@@ -1356,7 +1472,7 @@
"filesystem",
"iterator"
],
- "time": "2017-11-27T13:52:08+00:00"
+ "time": "2018-09-13T20:33:42+00:00"
},
{
"name": "phpunit/php-text-template",
@@ -1401,28 +1517,28 @@
},
{
"name": "phpunit/php-timer",
- "version": "1.0.9",
+ "version": "2.1.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f"
+ "reference": "1038454804406b0b5f5f520358e78c1c2f71501e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f",
- "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/1038454804406b0b5f5f520358e78c1c2f71501e",
+ "reference": "1038454804406b0b5f5f520358e78c1c2f71501e",
"shasum": ""
},
"require": {
- "php": "^5.3.3 || ^7.0"
+ "php": "^7.1"
},
"require-dev": {
- "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0"
+ "phpunit/phpunit": "^7.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0-dev"
+ "dev-master": "2.1-dev"
}
},
"autoload": {
@@ -1437,7 +1553,7 @@
"authors": [
{
"name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
+ "email": "sebastian@phpunit.de",
"role": "lead"
}
],
@@ -1446,33 +1562,33 @@
"keywords": [
"timer"
],
- "time": "2017-02-26T11:10:40+00:00"
+ "time": "2019-06-07T04:22:29+00:00"
},
{
"name": "phpunit/php-token-stream",
- "version": "1.4.12",
+ "version": "3.1.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "1ce90ba27c42e4e44e6d8458241466380b51fa16"
+ "reference": "e899757bb3df5ff6e95089132f32cd59aac2220a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/1ce90ba27c42e4e44e6d8458241466380b51fa16",
- "reference": "1ce90ba27c42e4e44e6d8458241466380b51fa16",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/e899757bb3df5ff6e95089132f32cd59aac2220a",
+ "reference": "e899757bb3df5ff6e95089132f32cd59aac2220a",
"shasum": ""
},
"require": {
"ext-tokenizer": "*",
- "php": ">=5.3.3"
+ "php": "^7.1"
},
"require-dev": {
- "phpunit/phpunit": "~4.2"
+ "phpunit/phpunit": "^7.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.4-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -1495,55 +1611,57 @@
"keywords": [
"tokenizer"
],
- "time": "2017-12-04T08:55:13+00:00"
+ "time": "2019-07-25T05:29:42+00:00"
},
{
"name": "phpunit/phpunit",
- "version": "5.7.27",
+ "version": "7.5.14",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "b7803aeca3ccb99ad0a506fa80b64cd6a56bbc0c"
+ "reference": "2834789aeb9ac182ad69bfdf9ae91856a59945ff"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/b7803aeca3ccb99ad0a506fa80b64cd6a56bbc0c",
- "reference": "b7803aeca3ccb99ad0a506fa80b64cd6a56bbc0c",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/2834789aeb9ac182ad69bfdf9ae91856a59945ff",
+ "reference": "2834789aeb9ac182ad69bfdf9ae91856a59945ff",
"shasum": ""
},
"require": {
+ "doctrine/instantiator": "^1.1",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
"ext-mbstring": "*",
"ext-xml": "*",
- "myclabs/deep-copy": "~1.3",
- "php": "^5.6 || ^7.0",
- "phpspec/prophecy": "^1.6.2",
- "phpunit/php-code-coverage": "^4.0.4",
- "phpunit/php-file-iterator": "~1.4",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-timer": "^1.0.6",
- "phpunit/phpunit-mock-objects": "^3.2",
- "sebastian/comparator": "^1.2.4",
- "sebastian/diff": "^1.4.3",
- "sebastian/environment": "^1.3.4 || ^2.0",
- "sebastian/exporter": "~2.0",
- "sebastian/global-state": "^1.1",
- "sebastian/object-enumerator": "~2.0",
- "sebastian/resource-operations": "~1.0",
- "sebastian/version": "^1.0.6|^2.0.1",
- "symfony/yaml": "~2.1|~3.0|~4.0"
+ "myclabs/deep-copy": "^1.7",
+ "phar-io/manifest": "^1.0.2",
+ "phar-io/version": "^2.0",
+ "php": "^7.1",
+ "phpspec/prophecy": "^1.7",
+ "phpunit/php-code-coverage": "^6.0.7",
+ "phpunit/php-file-iterator": "^2.0.1",
+ "phpunit/php-text-template": "^1.2.1",
+ "phpunit/php-timer": "^2.1",
+ "sebastian/comparator": "^3.0",
+ "sebastian/diff": "^3.0",
+ "sebastian/environment": "^4.0",
+ "sebastian/exporter": "^3.1",
+ "sebastian/global-state": "^2.0",
+ "sebastian/object-enumerator": "^3.0.3",
+ "sebastian/resource-operations": "^2.0",
+ "sebastian/version": "^2.0.1"
},
"conflict": {
- "phpdocumentor/reflection-docblock": "3.0.2"
+ "phpunit/phpunit-mock-objects": "*"
},
"require-dev": {
"ext-pdo": "*"
},
"suggest": {
+ "ext-soap": "*",
"ext-xdebug": "*",
- "phpunit/php-invoker": "~1.1"
+ "phpunit/php-invoker": "^2.0"
},
"bin": [
"phpunit"
@@ -1551,7 +1669,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.7.x-dev"
+ "dev-master": "7.5-dev"
}
},
"autoload": {
@@ -1566,8 +1684,8 @@
"authors": [
{
"name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
+ "role": "lead",
+ "email": "sebastian@phpunit.de"
}
],
"description": "The PHP Unit Testing framework.",
@@ -1577,66 +1695,7 @@
"testing",
"xunit"
],
- "time": "2018-02-01T05:50:59+00:00"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "3.4.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "a23b761686d50a560cc56233b9ecf49597cc9118"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/a23b761686d50a560cc56233b9ecf49597cc9118",
- "reference": "a23b761686d50a560cc56233b9ecf49597cc9118",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.6 || ^7.0",
- "phpunit/php-text-template": "^1.2",
- "sebastian/exporter": "^1.2 || ^2.0"
- },
- "conflict": {
- "phpunit/phpunit": "<5.4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2017-06-30T09:13:00+00:00"
+ "time": "2019-07-15T06:24:08+00:00"
},
{
"name": "psr/log",
@@ -1776,30 +1835,30 @@
},
{
"name": "sebastian/comparator",
- "version": "1.2.4",
+ "version": "3.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be"
+ "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2b7424b55f5047b47ac6e5ccb20b2aea4011d9be",
- "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/5de4fc177adf9bce8df98d8d141a7559d7ccf6da",
+ "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da",
"shasum": ""
},
"require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
+ "php": "^7.1",
+ "sebastian/diff": "^3.0",
+ "sebastian/exporter": "^3.1"
},
"require-dev": {
- "phpunit/phpunit": "~4.4"
+ "phpunit/phpunit": "^7.1"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.2.x-dev"
+ "dev-master": "3.0-dev"
}
},
"autoload": {
@@ -1830,38 +1889,39 @@
}
],
"description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
+ "homepage": "https://github.com/sebastianbergmann/comparator",
"keywords": [
"comparator",
"compare",
"equality"
],
- "time": "2017-01-29T09:50:25+00:00"
+ "time": "2018-07-12T15:12:46+00:00"
},
{
"name": "sebastian/diff",
- "version": "1.4.3",
+ "version": "3.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4"
+ "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/7f066a26a962dbe58ddea9f72a4e82874a3975a4",
- "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/720fcc7e9b5cf384ea68d9d930d480907a0c1a29",
+ "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29",
"shasum": ""
},
"require": {
- "php": "^5.3.3 || ^7.0"
+ "php": "^7.1"
},
"require-dev": {
- "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0"
+ "phpunit/phpunit": "^7.5 || ^8.0",
+ "symfony/process": "^2 || ^3.3 || ^4"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.4-dev"
+ "dev-master": "3.0-dev"
}
},
"autoload": {
@@ -1886,34 +1946,40 @@
"description": "Diff implementation",
"homepage": "https://github.com/sebastianbergmann/diff",
"keywords": [
- "diff"
+ "diff",
+ "udiff",
+ "unidiff",
+ "unified diff"
],
- "time": "2017-05-22T07:24:03+00:00"
+ "time": "2019-02-04T06:01:07+00:00"
},
{
"name": "sebastian/environment",
- "version": "2.0.0",
+ "version": "4.2.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac"
+ "reference": "f2a2c8e1c97c11ace607a7a667d73d47c19fe404"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/f2a2c8e1c97c11ace607a7a667d73d47c19fe404",
+ "reference": "f2a2c8e1c97c11ace607a7a667d73d47c19fe404",
"shasum": ""
},
"require": {
- "php": "^5.6 || ^7.0"
+ "php": "^7.1"
},
"require-dev": {
- "phpunit/phpunit": "^5.0"
+ "phpunit/phpunit": "^7.5"
+ },
+ "suggest": {
+ "ext-posix": "*"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -1938,34 +2004,34 @@
"environment",
"hhvm"
],
- "time": "2016-11-26T07:53:53+00:00"
+ "time": "2019-05-05T09:05:15+00:00"
},
{
"name": "sebastian/exporter",
- "version": "2.0.0",
+ "version": "3.1.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4"
+ "reference": "234199f4528de6d12aaa58b612e98f7d36adb937"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/234199f4528de6d12aaa58b612e98f7d36adb937",
+ "reference": "234199f4528de6d12aaa58b612e98f7d36adb937",
"shasum": ""
},
"require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~2.0"
+ "php": "^7.0",
+ "sebastian/recursion-context": "^3.0"
},
"require-dev": {
"ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
+ "phpunit/phpunit": "^6.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "3.1.x-dev"
}
},
"autoload": {
@@ -2005,27 +2071,27 @@
"export",
"exporter"
],
- "time": "2016-11-19T08:54:04+00:00"
+ "time": "2017-04-03T13:19:02+00:00"
},
{
"name": "sebastian/global-state",
- "version": "1.1.1",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
+ "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4",
+ "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": "^7.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.2"
+ "phpunit/phpunit": "^6.0"
},
"suggest": {
"ext-uopz": "*"
@@ -2033,7 +2099,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0-dev"
+ "dev-master": "2.0-dev"
}
},
"autoload": {
@@ -2056,33 +2122,34 @@
"keywords": [
"global state"
],
- "time": "2015-10-12T03:26:01+00:00"
+ "time": "2017-04-27T15:39:26+00:00"
},
{
"name": "sebastian/object-enumerator",
- "version": "2.0.1",
+ "version": "3.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7"
+ "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/1311872ac850040a79c3c058bea3e22d0f09cbb7",
- "reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/7cfd9e65d11ffb5af41198476395774d4c8a84c5",
+ "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5",
"shasum": ""
},
"require": {
- "php": ">=5.6",
- "sebastian/recursion-context": "~2.0"
+ "php": "^7.0",
+ "sebastian/object-reflector": "^1.1.1",
+ "sebastian/recursion-context": "^3.0"
},
"require-dev": {
- "phpunit/phpunit": "~5"
+ "phpunit/phpunit": "^6.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "3.0.x-dev"
}
},
"autoload": {
@@ -2102,32 +2169,77 @@
],
"description": "Traverses array structures and object graphs to enumerate all referenced objects",
"homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "time": "2017-02-18T15:18:39+00:00"
+ "time": "2017-08-03T12:35:26+00:00"
},
{
- "name": "sebastian/recursion-context",
- "version": "2.0.0",
+ "name": "sebastian/object-reflector",
+ "version": "1.1.1",
"source": {
"type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a"
+ "url": "https://github.com/sebastianbergmann/object-reflector.git",
+ "reference": "773f97c67f28de00d397be301821b06708fca0be"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/773f97c67f28de00d397be301821b06708fca0be",
+ "reference": "773f97c67f28de00d397be301821b06708fca0be",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": "^7.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.4"
+ "phpunit/phpunit": "^6.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "1.1-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Allows reflection of object attributes, including inherited and non-public ones",
+ "homepage": "https://github.com/sebastianbergmann/object-reflector/",
+ "time": "2017-03-29T09:07:27+00:00"
+ },
+ {
+ "name": "sebastian/recursion-context",
+ "version": "3.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/recursion-context.git",
+ "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8",
+ "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^6.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.0.x-dev"
}
},
"autoload": {
@@ -2155,29 +2267,29 @@
],
"description": "Provides functionality to recursively process PHP variables",
"homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2016-11-19T07:33:16+00:00"
+ "time": "2017-03-03T06:23:57+00:00"
},
{
"name": "sebastian/resource-operations",
- "version": "1.0.0",
+ "version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52"
+ "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
+ "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/4d7a795d35b889bf80a0cc04e08d77cedfa917a9",
+ "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9",
"shasum": ""
},
"require": {
- "php": ">=5.6.0"
+ "php": "^7.1"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "2.0-dev"
}
},
"autoload": {
@@ -2197,7 +2309,7 @@
],
"description": "Provides a list of PHP built-in functions that operate on resources",
"homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "time": "2015-07-28T20:34:47+00:00"
+ "time": "2018-10-04T04:07:39+00:00"
},
{
"name": "sebastian/version",
@@ -2685,16 +2797,16 @@
},
{
"name": "symfony/polyfill-ctype",
- "version": "v1.10.0",
+ "version": "v1.11.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
- "reference": "e3d826245268269cd66f8326bd8bc066687b4a19"
+ "reference": "82ebae02209c21113908c229e9883c419720738a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/e3d826245268269cd66f8326bd8bc066687b4a19",
- "reference": "e3d826245268269cd66f8326bd8bc066687b4a19",
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/82ebae02209c21113908c229e9883c419720738a",
+ "reference": "82ebae02209c21113908c229e9883c419720738a",
"shasum": ""
},
"require": {
@@ -2706,7 +2818,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.9-dev"
+ "dev-master": "1.11-dev"
}
},
"autoload": {
@@ -2739,7 +2851,7 @@
"polyfill",
"portable"
],
- "time": "2018-08-06T14:22:27+00:00"
+ "time": "2019-02-06T07:57:58+00:00"
},
{
"name": "symfony/polyfill-mbstring",
@@ -3012,65 +3124,6 @@
"homepage": "https://symfony.com",
"time": "2018-10-02T12:28:39+00:00"
},
- {
- "name": "symfony/yaml",
- "version": "v3.4.18",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "640b6c27fed4066d64b64d5903a86043f4a4de7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/640b6c27fed4066d64b64d5903a86043f4a4de7f",
- "reference": "640b6c27fed4066d64b64d5903a86043f4a4de7f",
- "shasum": ""
- },
- "require": {
- "php": "^5.5.9|>=7.0.8",
- "symfony/polyfill-ctype": "~1.8"
- },
- "conflict": {
- "symfony/console": "<3.4"
- },
- "require-dev": {
- "symfony/console": "~3.4|~4.0"
- },
- "suggest": {
- "symfony/console": "For validating YAML files using the lint command"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com",
- "time": "2018-10-02T16:33:53+00:00"
- },
{
"name": "tecnickcom/tcpdf",
"version": "6.2.26",
@@ -3134,21 +3187,62 @@
"time": "2018-10-16T17:24:05+00:00"
},
{
- "name": "webmozart/assert",
- "version": "1.3.0",
+ "name": "theseer/tokenizer",
+ "version": "1.1.3",
"source": {
"type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "0df1908962e7a3071564e857d86874dad1ef204a"
+ "url": "https://github.com/theseer/tokenizer.git",
+ "reference": "11336f6f84e16a720dae9d8e6ed5019efa85a0f9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/0df1908962e7a3071564e857d86874dad1ef204a",
- "reference": "0df1908962e7a3071564e857d86874dad1ef204a",
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/11336f6f84e16a720dae9d8e6ed5019efa85a0f9",
+ "reference": "11336f6f84e16a720dae9d8e6ed5019efa85a0f9",
"shasum": ""
},
"require": {
- "php": "^5.3.3 || ^7.0"
+ "ext-dom": "*",
+ "ext-tokenizer": "*",
+ "ext-xmlwriter": "*",
+ "php": "^7.0"
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Arne Blankerts",
+ "email": "arne@blankerts.de",
+ "role": "Developer"
+ }
+ ],
+ "description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
+ "time": "2019-06-13T22:48:21+00:00"
+ },
+ {
+ "name": "webmozart/assert",
+ "version": "1.4.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/webmozart/assert.git",
+ "reference": "83e253c8e0be5b0257b881e1827274667c5c17a9"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/webmozart/assert/zipball/83e253c8e0be5b0257b881e1827274667c5c17a9",
+ "reference": "83e253c8e0be5b0257b881e1827274667c5c17a9",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^5.3.3 || ^7.0",
+ "symfony/polyfill-ctype": "^1.8"
},
"require-dev": {
"phpunit/phpunit": "^4.6",
@@ -3181,7 +3275,7 @@
"check",
"validate"
],
- "time": "2018-01-29T19:49:41+00:00"
+ "time": "2018-12-25T11:19:39+00:00"
}
],
"aliases": [],
@@ -3192,7 +3286,7 @@
"prefer-stable": false,
"prefer-lowest": false,
"platform": {
- "php": "^5.6|^7.0",
+ "php": "^7.1",
"ext-ctype": "*",
"ext-dom": "*",
"ext-gd": "*",
@@ -3208,4 +3302,4 @@
"ext-zlib": "*"
},
"platform-dev": []
-}
\ No newline at end of file
+}
diff --git a/docs/assets/ClassDiagrams/Architecture.cd b/docs/assets/ClassDiagrams/Architecture.cd
deleted file mode 100644
index f36715fc..00000000
--- a/docs/assets/ClassDiagrams/Architecture.cd
+++ /dev/null
@@ -1,51 +0,0 @@
-
-
-
-
-
-
- Classes\PHPExcel.cs
- AAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAA=
-
-
-
-
-
-
-
-
- Classes\Worksheet.cs
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-
-
-
-
-
- Classes\IReader.cs
- AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=
-
-
-
-
-
-
-
-
-
-
-
-
-
- Classes\IWriter.cs
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/docs/assets/ClassDiagrams/Architecture.png b/docs/assets/ClassDiagrams/Architecture.png
deleted file mode 100644
index 3fc7655a..00000000
Binary files a/docs/assets/ClassDiagrams/Architecture.png and /dev/null differ
diff --git a/docs/assets/ClassDiagrams/ClassDiagrams.csproj b/docs/assets/ClassDiagrams/ClassDiagrams.csproj
deleted file mode 100644
index cae9d4ec..00000000
--- a/docs/assets/ClassDiagrams/ClassDiagrams.csproj
+++ /dev/null
@@ -1,64 +0,0 @@
-
-
-
- Debug
- AnyCPU
- 8.0.50727
- 2.0
- {CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}
- Exe
- Properties
- ClassDiagrams
- ClassDiagrams
-
-
- 2.0
-
-
-
-
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
-
-
- pdbonly
- true
- bin\Release\
- TRACE
- prompt
- 4
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/docs/assets/ClassDiagrams/ClassDiagrams.csproj.user b/docs/assets/ClassDiagrams/ClassDiagrams.csproj.user
deleted file mode 100644
index 5c2d6e6a..00000000
--- a/docs/assets/ClassDiagrams/ClassDiagrams.csproj.user
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
- ShowAllFiles
-
-
\ No newline at end of file
diff --git a/docs/assets/ClassDiagrams/ClassDiagrams.sln b/docs/assets/ClassDiagrams/ClassDiagrams.sln
deleted file mode 100644
index b565408f..00000000
--- a/docs/assets/ClassDiagrams/ClassDiagrams.sln
+++ /dev/null
@@ -1,20 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClassDiagrams", "ClassDiagrams.csproj", "{CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}.Release|Any CPU.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/docs/assets/ClassDiagrams/Classes/IReader.cs b/docs/assets/ClassDiagrams/Classes/IReader.cs
deleted file mode 100644
index 33cb05a8..00000000
--- a/docs/assets/ClassDiagrams/Classes/IReader.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace ClassDiagrams
-{
- public interface PHPExcel_Reader_IReader
- {
- PHPExcel reads
- {
- get;
- set;
- }
- }
-}
diff --git a/docs/assets/ClassDiagrams/Classes/IWriter.cs b/docs/assets/ClassDiagrams/Classes/IWriter.cs
deleted file mode 100644
index 6783f3a6..00000000
--- a/docs/assets/ClassDiagrams/Classes/IWriter.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace ClassDiagrams
-{
- public interface PHPExcel_Writer_IWriter
- {
- PHPExcel writes
- {
- get;
- set;
- }
- }
-}
diff --git a/docs/assets/ClassDiagrams/Classes/PHPExcel.cs b/docs/assets/ClassDiagrams/Classes/PHPExcel.cs
deleted file mode 100644
index 825139b9..00000000
--- a/docs/assets/ClassDiagrams/Classes/PHPExcel.cs
+++ /dev/null
@@ -1,40 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace ClassDiagrams
-{
- public class PHPExcel
- {
- ///
- public Worksheet Worksheets
- {
- get
- {
- throw new System.NotImplementedException();
- }
- set
- {
- }
- }
- }
-
- public class PHPExcel_Writer_PDF : PHPExcel_Writer_IWriter
- {
- #region PHPExcel_Writer_IWriter Members
-
- public PHPExcel writes
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-}
diff --git a/docs/assets/ClassDiagrams/Classes/PHPExcel_IOFactory.cs b/docs/assets/ClassDiagrams/Classes/PHPExcel_IOFactory.cs
deleted file mode 100644
index 695a455a..00000000
--- a/docs/assets/ClassDiagrams/Classes/PHPExcel_IOFactory.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace ClassDiagrams
-{
- public class PHPExcel_IOFactory
- {
- public PHPExcel_Reader_IReader createsReader
- {
- get
- {
- throw new System.NotImplementedException();
- }
- set
- {
- }
- }
-
- public PHPExcel_Writer_IWriter createsWriter
- {
- get
- {
- throw new System.NotImplementedException();
- }
- set
- {
- }
- }
-
- public PHPExcel_Writer_IWriter createWriter()
- {
- throw new System.NotImplementedException();
- }
-
- public PHPExcel_Reader_IReader createReader()
- {
- throw new System.NotImplementedException();
- }
- }
-}
diff --git a/docs/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel2007.cs b/docs/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel2007.cs
deleted file mode 100644
index fc38fac3..00000000
--- a/docs/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel2007.cs
+++ /dev/null
@@ -1,25 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace ClassDiagrams
-{
- public class PHPExcel_Reader_Excel2007 : PHPExcel_Reader_IReader
- {
- #region IReader Members
-
- public PHPExcel reads
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-}
diff --git a/docs/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel5.cs b/docs/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel5.cs
deleted file mode 100644
index 673df56c..00000000
--- a/docs/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel5.cs
+++ /dev/null
@@ -1,63 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace ClassDiagrams
-{
- public class PHPExcel_Reader_Excel5 : PHPExcel_Reader_IReader
- {
- #region PHPExcel_Writer_IReader Members
-
- public PHPExcel reads
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-
- public class PHPExcel_Reader_Excel2003XML : PHPExcel_Reader_IReader
- {
- #region PHPExcel_Writer_IReader Members
-
- public PHPExcel reads
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-
- public class PHPExcel_Reader_SYLK : PHPExcel_Reader_IReader
- {
- #region PHPExcel_Writer_IReader Members
-
- public PHPExcel reads
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-}
diff --git a/docs/assets/ClassDiagrams/Classes/PHPExcel_Reader_Serialized.cs b/docs/assets/ClassDiagrams/Classes/PHPExcel_Reader_Serialized.cs
deleted file mode 100644
index 3718dd21..00000000
--- a/docs/assets/ClassDiagrams/Classes/PHPExcel_Reader_Serialized.cs
+++ /dev/null
@@ -1,44 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace ClassDiagrams
-{
- public class PHPExcel_Reader_Serialized : PHPExcel_Reader_IReader
- {
- #region IReader Members
-
- public PHPExcel reads
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-
- public class PHPExcel_Reader_CSV : PHPExcel_Reader_IReader
- {
- #region IReader Members
-
- public PHPExcel reads
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-}
diff --git a/docs/assets/ClassDiagrams/Classes/PHPExcel_Writer_Excel2007.cs b/docs/assets/ClassDiagrams/Classes/PHPExcel_Writer_Excel2007.cs
deleted file mode 100644
index 5f4b5658..00000000
--- a/docs/assets/ClassDiagrams/Classes/PHPExcel_Writer_Excel2007.cs
+++ /dev/null
@@ -1,25 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace ClassDiagrams
-{
- public class PHPExcel_Writer_Excel2007 : PHPExcel_Writer_IWriter
- {
- #region IWriter Members
-
- public PHPExcel writes
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-}
diff --git a/docs/assets/ClassDiagrams/Classes/PHPExcel_Writer_Serialized.cs b/docs/assets/ClassDiagrams/Classes/PHPExcel_Writer_Serialized.cs
deleted file mode 100644
index 58f4bbe7..00000000
--- a/docs/assets/ClassDiagrams/Classes/PHPExcel_Writer_Serialized.cs
+++ /dev/null
@@ -1,82 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace ClassDiagrams
-{
- public class PHPExcel_Writer_Serialized : PHPExcel_Writer_IWriter
- {
- #region IWriter Members
-
- public PHPExcel writes
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-
- public class PHPExcel_Writer_CSV : PHPExcel_Writer_IWriter
- {
- #region IWriter Members
-
- public PHPExcel writes
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-
- public class PHPExcel_Writer_Excel5 : PHPExcel_Writer_IWriter
- {
- #region IWriter Members
-
- public PHPExcel writes
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-
- public class PHPExcel_Writer_HTML : PHPExcel_Writer_IWriter
- {
- #region IWriter Members
-
- public PHPExcel writes
- {
- get
- {
- throw new Exception("The method or operation is not implemented.");
- }
- set
- {
- throw new Exception("The method or operation is not implemented.");
- }
- }
-
- #endregion
- }
-}
diff --git a/docs/assets/ClassDiagrams/Classes/Worksheet.cs b/docs/assets/ClassDiagrams/Classes/Worksheet.cs
deleted file mode 100644
index aa977b86..00000000
--- a/docs/assets/ClassDiagrams/Classes/Worksheet.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace ClassDiagrams
-{
- public class Worksheet
- {
- }
-
- public class CopyOfWorksheet
- {
- }
-}
diff --git a/docs/assets/ClassDiagrams/Exports/Architecture.png b/docs/assets/ClassDiagrams/Exports/Architecture.png
deleted file mode 100644
index 13248180..00000000
Binary files a/docs/assets/ClassDiagrams/Exports/Architecture.png and /dev/null differ
diff --git a/docs/assets/ClassDiagrams/Exports/ReaderWriter.png b/docs/assets/ClassDiagrams/Exports/ReaderWriter.png
deleted file mode 100644
index b915faa7..00000000
Binary files a/docs/assets/ClassDiagrams/Exports/ReaderWriter.png and /dev/null differ
diff --git a/docs/assets/ClassDiagrams/ReaderWriter.cd b/docs/assets/ClassDiagrams/ReaderWriter.cd
deleted file mode 100644
index 7764e092..00000000
--- a/docs/assets/ClassDiagrams/ReaderWriter.cd
+++ /dev/null
@@ -1,135 +0,0 @@
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=
- Classes\PHPExcel_Reader_Excel2007.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=
- Classes\PHPExcel_Writer_Excel2007.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=
- Classes\PHPExcel_Reader_Serialized.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=
- Classes\PHPExcel_Writer_Serialized.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=
- Classes\PHPExcel_Reader_Serialized.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=
- Classes\PHPExcel_Writer_Serialized.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=
- Classes\PHPExcel_Writer_Serialized.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=
- Classes\PHPExcel_Writer_Serialized.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=
- Classes\PHPExcel_Reader_Excel5.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=
- Classes\PHPExcel.cs
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- AIAAAAAAAAEAAAAAAQAAAAAAAAAAAAAAAAABAAAAAAA=
- Classes\PHPExcel_IOFactory.cs
-
-
-
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=
- Classes\PHPExcel_Reader_Excel5.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=
- Classes\PHPExcel_Reader_Excel5.cs
-
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=
- Classes\IWriter.cs
-
-
-
-
-
- AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=
- Classes\IReader.cs
-
-
-
-
\ No newline at end of file
diff --git a/docs/assets/ClassDiagrams/ReaderWriter.png b/docs/assets/ClassDiagrams/ReaderWriter.png
deleted file mode 100644
index d76c98d9..00000000
Binary files a/docs/assets/ClassDiagrams/ReaderWriter.png and /dev/null differ
diff --git a/docs/index.md b/docs/index.md
index be4e0fd0..7c276792 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -25,12 +25,9 @@ spreadsheet file formats, like Excel and LibreOffice Calc.
## Software requirements
-The following software is required to develop using PhpSpreadsheet:
-
-- PHP version 5.6 or newer
-- PHP extension php\_zip enabled
-- PHP extension php\_xml enabled
-- PHP extension php\_gd2 enabled (if not compiled in)
+PHP version 7.1 or newer to develop using PhpSpreadsheet. Other requirements, such as PHP extensions, are enforced by
+composer. See the `require` section of [the composer.json file](https://github.com/PHPOffice/PhpSpreadsheet/blob/master/composer.json)
+for details.
### PHP version support
diff --git a/phpunit.xml.dist b/phpunit.xml.dist
index 6880d23e..be3643d8 100644
--- a/phpunit.xml.dist
+++ b/phpunit.xml.dist
@@ -1,9 +1,10 @@
-
+
diff --git a/samples/index.php b/samples/index.php
index ec100cf4..598caef4 100644
--- a/samples/index.php
+++ b/samples/index.php
@@ -3,7 +3,7 @@
require_once 'Header.php';
$requirements = [
- 'PHP 5.6.0' => version_compare(PHP_VERSION, '5.6.0', '>='),
+ 'PHP 7.1.0' => version_compare(PHP_VERSION, '7.1.0', '>='),
'PHP extension XML' => extension_loaded('xml'),
'PHP extension xmlwriter' => extension_loaded('xmlwriter'),
'PHP extension mbstring' => extension_loaded('mbstring'),
diff --git a/src/PhpSpreadsheet/Calculation/Calculation.php b/src/PhpSpreadsheet/Calculation/Calculation.php
index f6385acd..325d132b 100644
--- a/src/PhpSpreadsheet/Calculation/Calculation.php
+++ b/src/PhpSpreadsheet/Calculation/Calculation.php
@@ -2416,7 +2416,7 @@ class Calculation
// Identify our locale and language
$language = $locale = strtolower($locale);
if (strpos($locale, '_') !== false) {
- list($language) = explode('_', $locale);
+ [$language] = explode('_', $locale);
}
if (count(self::$validLocaleLanguages) == 1) {
self::loadLocales();
@@ -2441,9 +2441,9 @@ class Calculation
// Retrieve the list of locale or language specific function names
$localeFunctions = file($functionNamesFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach ($localeFunctions as $localeFunction) {
- list($localeFunction) = explode('##', $localeFunction); // Strip out comments
+ [$localeFunction] = explode('##', $localeFunction); // Strip out comments
if (strpos($localeFunction, '=') !== false) {
- list($fName, $lfName) = explode('=', $localeFunction);
+ [$fName, $lfName] = explode('=', $localeFunction);
$fName = trim($fName);
$lfName = trim($lfName);
if ((isset(self::$phpSpreadsheetFunctions[$fName])) && ($lfName != '') && ($fName != $lfName)) {
@@ -2466,9 +2466,9 @@ class Calculation
if (file_exists($configFile)) {
$localeSettings = file($configFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach ($localeSettings as $localeSetting) {
- list($localeSetting) = explode('##', $localeSetting); // Strip out comments
+ [$localeSetting] = explode('##', $localeSetting); // Strip out comments
if (strpos($localeSetting, '=') !== false) {
- list($settingName, $settingValue) = explode('=', $localeSetting);
+ [$settingName, $settingValue] = explode('=', $localeSetting);
$settingName = strtoupper(trim($settingName));
switch ($settingName) {
case 'ARGUMENTSEPARATOR':
@@ -2977,17 +2977,17 @@ class Calculation
// Examine each of the two operands, and turn them into an array if they aren't one already
// Note that this function should only be called if one or both of the operand is already an array
if (!is_array($operand1)) {
- list($matrixRows, $matrixColumns) = self::getMatrixDimensions($operand2);
+ [$matrixRows, $matrixColumns] = self::getMatrixDimensions($operand2);
$operand1 = array_fill(0, $matrixRows, array_fill(0, $matrixColumns, $operand1));
$resize = 0;
} elseif (!is_array($operand2)) {
- list($matrixRows, $matrixColumns) = self::getMatrixDimensions($operand1);
+ [$matrixRows, $matrixColumns] = self::getMatrixDimensions($operand1);
$operand2 = array_fill(0, $matrixRows, array_fill(0, $matrixColumns, $operand2));
$resize = 0;
}
- list($matrix1Rows, $matrix1Columns) = self::getMatrixDimensions($operand1);
- list($matrix2Rows, $matrix2Columns) = self::getMatrixDimensions($operand2);
+ [$matrix1Rows, $matrix1Columns] = self::getMatrixDimensions($operand1);
+ [$matrix2Rows, $matrix2Columns] = self::getMatrixDimensions($operand2);
if (($matrix1Rows == $matrix2Columns) && ($matrix2Rows == $matrix1Columns)) {
$resize = 1;
}
@@ -3496,11 +3496,11 @@ class Calculation
$testPrevOp = $stack->last(1);
if ($testPrevOp['value'] == ':') {
$startRowColRef = $output[count($output) - 1]['value'];
- list($rangeWS1, $startRowColRef) = Worksheet::extractSheetTitle($startRowColRef, true);
+ [$rangeWS1, $startRowColRef] = Worksheet::extractSheetTitle($startRowColRef, true);
if ($rangeWS1 != '') {
$rangeWS1 .= '!';
}
- list($rangeWS2, $val) = Worksheet::extractSheetTitle($val, true);
+ [$rangeWS2, $val] = Worksheet::extractSheetTitle($val, true);
if ($rangeWS2 != '') {
$rangeWS2 .= '!';
} else {
@@ -3678,12 +3678,12 @@ class Calculation
// Binary Operators
case ':': // Range
if (strpos($operand1Data['reference'], '!') !== false) {
- list($sheet1, $operand1Data['reference']) = Worksheet::extractSheetTitle($operand1Data['reference'], true);
+ [$sheet1, $operand1Data['reference']] = Worksheet::extractSheetTitle($operand1Data['reference'], true);
} else {
$sheet1 = ($pCellParent !== null) ? $pCellWorksheet->getTitle() : '';
}
- list($sheet2, $operand2Data['reference']) = Worksheet::extractSheetTitle($operand2Data['reference'], true);
+ [$sheet2, $operand2Data['reference']] = Worksheet::extractSheetTitle($operand2Data['reference'], true);
if (empty($sheet2)) {
$sheet2 = $sheet1;
}
@@ -4312,7 +4312,7 @@ class Calculation
if ($pSheet !== null) {
$pSheetName = $pSheet->getTitle();
if (strpos($pRange, '!') !== false) {
- list($pSheetName, $pRange) = Worksheet::extractSheetTitle($pRange, true);
+ [$pSheetName, $pRange] = Worksheet::extractSheetTitle($pRange, true);
$pSheet = $this->spreadsheet->getSheetByName($pSheetName);
}
@@ -4365,7 +4365,7 @@ class Calculation
if ($pSheet !== null) {
$pSheetName = $pSheet->getTitle();
if (strpos($pRange, '!') !== false) {
- list($pSheetName, $pRange) = Worksheet::extractSheetTitle($pRange, true);
+ [$pSheetName, $pRange] = Worksheet::extractSheetTitle($pRange, true);
$pSheet = $this->spreadsheet->getSheetByName($pSheetName);
}
@@ -4389,7 +4389,7 @@ class Calculation
$aReferences = Coordinate::extractAllCellReferencesInRange($pRange);
if (!isset($aReferences[1])) {
// Single cell (or single column or row) in range
- list($currentCol, $currentRow) = Coordinate::coordinateFromString($aReferences[0]);
+ [$currentCol, $currentRow] = Coordinate::coordinateFromString($aReferences[0]);
if ($pSheet->cellExists($aReferences[0])) {
$returnValue[$currentRow][$currentCol] = $pSheet->getCell($aReferences[0])->getCalculatedValue($resetLog);
} else {
@@ -4399,7 +4399,7 @@ class Calculation
// Extract cell data for all cells in the range
foreach ($aReferences as $reference) {
// Extract range
- list($currentCol, $currentRow) = Coordinate::coordinateFromString($reference);
+ [$currentCol, $currentRow] = Coordinate::coordinateFromString($reference);
if ($pSheet->cellExists($reference)) {
$returnValue[$currentRow][$currentCol] = $pSheet->getCell($reference)->getCalculatedValue($resetLog);
} else {
diff --git a/src/PhpSpreadsheet/Calculation/Functions.php b/src/PhpSpreadsheet/Calculation/Functions.php
index d2baf4ea..40e7d964 100644
--- a/src/PhpSpreadsheet/Calculation/Functions.php
+++ b/src/PhpSpreadsheet/Calculation/Functions.php
@@ -281,7 +281,7 @@ class Functions
return '=' . $condition;
}
preg_match('/(=|<[>=]?|>=?)(.*)/', $condition, $matches);
- list(, $operator, $operand) = $matches;
+ [, $operator, $operand] = $matches;
if (is_numeric(trim($operand, '"'))) {
$operand = trim($operand, '"');
diff --git a/src/PhpSpreadsheet/Calculation/LookupRef.php b/src/PhpSpreadsheet/Calculation/LookupRef.php
index f2d22c00..5bc0a435 100644
--- a/src/PhpSpreadsheet/Calculation/LookupRef.php
+++ b/src/PhpSpreadsheet/Calculation/LookupRef.php
@@ -98,9 +98,9 @@ class LookupRef
return (int) Coordinate::columnIndexFromString($columnKey);
}
} else {
- list($sheet, $cellAddress) = Worksheet::extractSheetTitle($cellAddress, true);
+ [$sheet, $cellAddress] = Worksheet::extractSheetTitle($cellAddress, true);
if (strpos($cellAddress, ':') !== false) {
- list($startAddress, $endAddress) = explode(':', $cellAddress);
+ [$startAddress, $endAddress] = explode(':', $cellAddress);
$startAddress = preg_replace('/[^a-z]/i', '', $startAddress);
$endAddress = preg_replace('/[^a-z]/i', '', $endAddress);
$returnValue = [];
@@ -138,7 +138,7 @@ class LookupRef
reset($cellAddress);
$isMatrix = (is_numeric(key($cellAddress)));
- list($columns, $rows) = Calculation::getMatrixDimensions($cellAddress);
+ [$columns, $rows] = Calculation::getMatrixDimensions($cellAddress);
if ($isMatrix) {
return $rows;
@@ -175,9 +175,9 @@ class LookupRef
}
}
} else {
- list($sheet, $cellAddress) = Worksheet::extractSheetTitle($cellAddress, true);
+ [$sheet, $cellAddress] = Worksheet::extractSheetTitle($cellAddress, true);
if (strpos($cellAddress, ':') !== false) {
- list($startAddress, $endAddress) = explode(':', $cellAddress);
+ [$startAddress, $endAddress] = explode(':', $cellAddress);
$startAddress = preg_replace('/\D/', '', $startAddress);
$endAddress = preg_replace('/\D/', '', $endAddress);
$returnValue = [];
@@ -187,7 +187,7 @@ class LookupRef
return $returnValue;
}
- list($cellAddress) = explode(':', $cellAddress);
+ [$cellAddress] = explode(':', $cellAddress);
return (int) preg_replace('/\D/', '', $cellAddress);
}
@@ -215,7 +215,7 @@ class LookupRef
reset($cellAddress);
$isMatrix = (is_numeric(key($cellAddress)));
- list($columns, $rows) = Calculation::getMatrixDimensions($cellAddress);
+ [$columns, $rows] = Calculation::getMatrixDimensions($cellAddress);
if ($isMatrix) {
return $columns;
@@ -285,7 +285,7 @@ class LookupRef
$cellAddress1 = $cellAddress;
$cellAddress2 = null;
if (strpos($cellAddress, ':') !== false) {
- list($cellAddress1, $cellAddress2) = explode(':', $cellAddress);
+ [$cellAddress1, $cellAddress2] = explode(':', $cellAddress);
}
if ((!preg_match('/^' . Calculation::CALCULATION_REGEXP_CELLREF . '$/i', $cellAddress1, $matches)) ||
@@ -295,7 +295,7 @@ class LookupRef
}
if (strpos($cellAddress, '!') !== false) {
- list($sheetName, $cellAddress) = Worksheet::extractSheetTitle($cellAddress, true);
+ [$sheetName, $cellAddress] = Worksheet::extractSheetTitle($cellAddress, true);
$sheetName = trim($sheetName, "'");
$pSheet = $pCell->getWorksheet()->getParent()->getSheetByName($sheetName);
} else {
@@ -306,7 +306,7 @@ class LookupRef
}
if (strpos($cellAddress, '!') !== false) {
- list($sheetName, $cellAddress) = Worksheet::extractSheetTitle($cellAddress, true);
+ [$sheetName, $cellAddress] = Worksheet::extractSheetTitle($cellAddress, true);
$sheetName = trim($sheetName, "'");
$pSheet = $pCell->getWorksheet()->getParent()->getSheetByName($sheetName);
} else {
@@ -359,16 +359,16 @@ class LookupRef
$sheetName = null;
if (strpos($cellAddress, '!')) {
- list($sheetName, $cellAddress) = Worksheet::extractSheetTitle($cellAddress, true);
+ [$sheetName, $cellAddress] = Worksheet::extractSheetTitle($cellAddress, true);
$sheetName = trim($sheetName, "'");
}
if (strpos($cellAddress, ':')) {
- list($startCell, $endCell) = explode(':', $cellAddress);
+ [$startCell, $endCell] = explode(':', $cellAddress);
} else {
$startCell = $endCell = $cellAddress;
}
- list($startCellColumn, $startCellRow) = Coordinate::coordinateFromString($startCell);
- list($endCellColumn, $endCellRow) = Coordinate::coordinateFromString($endCell);
+ [$startCellColumn, $startCellRow] = Coordinate::coordinateFromString($startCell);
+ [$endCellColumn, $endCellRow] = Coordinate::coordinateFromString($endCell);
$startCellRow += $rows;
$startCellColumn = Coordinate::columnIndexFromString($startCellColumn) - 1;
diff --git a/src/PhpSpreadsheet/Calculation/MathTrig.php b/src/PhpSpreadsheet/Calculation/MathTrig.php
index 5afdaf35..4e384ea3 100644
--- a/src/PhpSpreadsheet/Calculation/MathTrig.php
+++ b/src/PhpSpreadsheet/Calculation/MathTrig.php
@@ -1074,7 +1074,7 @@ class MathTrig
return array_filter(
$args,
function ($index) use ($cellReference) {
- list(, $row, $column) = explode('.', $index);
+ [, $row, $column] = explode('.', $index);
return $cellReference->getWorksheet()->getRowDimension($row)->getVisible() &&
$cellReference->getWorksheet()->getColumnDimension($column)->getVisible();
@@ -1088,7 +1088,7 @@ class MathTrig
return array_filter(
$args,
function ($index) use ($cellReference) {
- list(, $row, $column) = explode('.', $index);
+ [, $row, $column] = explode('.', $index);
if ($cellReference->getWorksheet()->cellExists($column . $row)) {
//take this cell out if it contains the SUBTOTAL or AGGREGATE functions in a formula
$isFormula = $cellReference->getWorksheet()->getCell($column . $row)->isFormula();
diff --git a/src/PhpSpreadsheet/Cell/AdvancedValueBinder.php b/src/PhpSpreadsheet/Cell/AdvancedValueBinder.php
index 4052c23c..1d28f247 100644
--- a/src/PhpSpreadsheet/Cell/AdvancedValueBinder.php
+++ b/src/PhpSpreadsheet/Cell/AdvancedValueBinder.php
@@ -118,7 +118,7 @@ class AdvancedValueBinder extends DefaultValueBinder implements IValueBinder
// Check for time without seconds e.g. '9:45', '09:45'
if (preg_match('/^(\d|[0-1]\d|2[0-3]):[0-5]\d$/', $value)) {
// Convert value to number
- list($h, $m) = explode(':', $value);
+ [$h, $m] = explode(':', $value);
$days = $h / 24 + $m / 1440;
$cell->setValueExplicit($days, DataType::TYPE_NUMERIC);
// Set style
@@ -131,7 +131,7 @@ class AdvancedValueBinder extends DefaultValueBinder implements IValueBinder
// Check for time with seconds '9:45:59', '09:45:59'
if (preg_match('/^(\d|[0-1]\d|2[0-3]):[0-5]\d:[0-5]\d$/', $value)) {
// Convert value to number
- list($h, $m, $s) = explode(':', $value);
+ [$h, $m, $s] = explode(':', $value);
$days = $h / 24 + $m / 1440 + $s / 86400;
// Convert value to number
$cell->setValueExplicit($days, DataType::TYPE_NUMERIC);
diff --git a/src/PhpSpreadsheet/Cell/Cell.php b/src/PhpSpreadsheet/Cell/Cell.php
index 813eee4a..45d1b5ba 100644
--- a/src/PhpSpreadsheet/Cell/Cell.php
+++ b/src/PhpSpreadsheet/Cell/Cell.php
@@ -511,7 +511,7 @@ class Cell
{
if ($mergeRange = $this->getMergeRange()) {
$mergeRange = Coordinate::splitRange($mergeRange);
- list($startCell) = $mergeRange[0];
+ [$startCell] = $mergeRange[0];
if ($this->getCoordinate() === $startCell) {
return true;
}
@@ -569,7 +569,7 @@ class Cell
*/
public function isInRange($pRange)
{
- list($rangeStart, $rangeEnd) = Coordinate::rangeBoundaries($pRange);
+ [$rangeStart, $rangeEnd] = Coordinate::rangeBoundaries($pRange);
// Translate properties
$myColumn = Coordinate::columnIndexFromString($this->getColumn());
diff --git a/src/PhpSpreadsheet/Cell/Coordinate.php b/src/PhpSpreadsheet/Cell/Coordinate.php
index 5e20ec6d..cc0543f6 100644
--- a/src/PhpSpreadsheet/Cell/Coordinate.php
+++ b/src/PhpSpreadsheet/Cell/Coordinate.php
@@ -71,7 +71,7 @@ abstract class Coordinate
}
// Split out any worksheet name from the reference
- list($worksheet, $pCoordinateString) = Worksheet::extractSheetTitle($pCoordinateString, true);
+ [$worksheet, $pCoordinateString] = Worksheet::extractSheetTitle($pCoordinateString, true);
if ($worksheet > '') {
$worksheet .= '!';
}
@@ -102,13 +102,13 @@ abstract class Coordinate
}
// Split out any worksheet name from the coordinate
- list($worksheet, $pCoordinateString) = Worksheet::extractSheetTitle($pCoordinateString, true);
+ [$worksheet, $pCoordinateString] = Worksheet::extractSheetTitle($pCoordinateString, true);
if ($worksheet > '') {
$worksheet .= '!';
}
// Create absolute coordinate
- list($column, $row) = self::coordinateFromString($pCoordinateString);
+ [$column, $row] = self::coordinateFromString($pCoordinateString);
$column = ltrim($column, '$');
$row = ltrim($row, '$');
@@ -187,7 +187,7 @@ abstract class Coordinate
if (strpos($pRange, ':') === false) {
$rangeA = $rangeB = $pRange;
} else {
- list($rangeA, $rangeB) = explode(':', $pRange);
+ [$rangeA, $rangeB] = explode(':', $pRange);
}
// Calculate range outer borders
@@ -211,7 +211,7 @@ abstract class Coordinate
public static function rangeDimension($pRange)
{
// Calculate range outer borders
- list($rangeStart, $rangeEnd) = self::rangeBoundaries($pRange);
+ [$rangeStart, $rangeEnd] = self::rangeBoundaries($pRange);
return [($rangeEnd[0] - $rangeStart[0] + 1), ($rangeEnd[1] - $rangeStart[1] + 1)];
}
@@ -238,7 +238,7 @@ abstract class Coordinate
if (strpos($pRange, ':') === false) {
$rangeA = $rangeB = $pRange;
} else {
- list($rangeA, $rangeB) = explode(':', $pRange);
+ [$rangeA, $rangeB] = explode(':', $pRange);
}
return [self::coordinateFromString($rangeA), self::coordinateFromString($rangeB)];
@@ -376,9 +376,9 @@ abstract class Coordinate
}
// Range...
- list($rangeStart, $rangeEnd) = $range;
- list($startColumn, $startRow) = self::coordinateFromString($rangeStart);
- list($endColumn, $endRow) = self::coordinateFromString($rangeEnd);
+ [$rangeStart, $rangeEnd] = $range;
+ [$startColumn, $startRow] = self::coordinateFromString($rangeStart);
+ [$endColumn, $endRow] = self::coordinateFromString($rangeEnd);
$startColumnIndex = self::columnIndexFromString($startColumn);
$endColumnIndex = self::columnIndexFromString($endColumn);
++$endColumnIndex;
@@ -432,7 +432,7 @@ abstract class Coordinate
continue;
}
- list($column, $row) = self::coordinateFromString($coord);
+ [$column, $row] = self::coordinateFromString($coord);
$row = (int) (ltrim($row, '$'));
$hashCode = $column . '-' . (is_object($value) ? $value->getHashCode() : $value);
diff --git a/src/PhpSpreadsheet/Chart/DataSeriesValues.php b/src/PhpSpreadsheet/Chart/DataSeriesValues.php
index e82b7efe..73905d97 100644
--- a/src/PhpSpreadsheet/Chart/DataSeriesValues.php
+++ b/src/PhpSpreadsheet/Chart/DataSeriesValues.php
@@ -376,7 +376,7 @@ class DataSeriesValues
}
unset($dataValue);
} else {
- list($worksheet, $cellRange) = Worksheet::extractSheetTitle($this->dataSource, true);
+ [$worksheet, $cellRange] = Worksheet::extractSheetTitle($this->dataSource, true);
$dimensions = Coordinate::rangeDimension(str_replace('$', '', $cellRange));
if (($dimensions[0] == 1) || ($dimensions[1] == 1)) {
$this->dataValues = Functions::flattenArray($newDataValues);
diff --git a/src/PhpSpreadsheet/Chart/Renderer/JpGraph.php b/src/PhpSpreadsheet/Chart/Renderer/JpGraph.php
index c0445d49..9dcab049 100644
--- a/src/PhpSpreadsheet/Chart/Renderer/JpGraph.php
+++ b/src/PhpSpreadsheet/Chart/Renderer/JpGraph.php
@@ -442,7 +442,7 @@ class JpGraph implements IRenderer
$seriesPlot->link->SetColor(self::$colourSet[self::$plotColour]);
} elseif ($scatterStyle == 'smoothMarker') {
$spline = new \Spline($dataValuesY, $dataValuesX);
- list($splineDataY, $splineDataX) = $spline->Get(count($dataValuesX) * self::$width / 20);
+ [$splineDataY, $splineDataX] = $spline->Get(count($dataValuesX) * self::$width / 20);
$lplot = new \LinePlot($splineDataX, $splineDataY);
$lplot->SetColor(self::$colourSet[self::$plotColour]);
diff --git a/src/PhpSpreadsheet/Reader/Csv.php b/src/PhpSpreadsheet/Reader/Csv.php
index 81ca1a8c..21251913 100644
--- a/src/PhpSpreadsheet/Reader/Csv.php
+++ b/src/PhpSpreadsheet/Reader/Csv.php
@@ -175,9 +175,8 @@ class Csv extends BaseReader
}
}
foreach ($potentialDelimiters as $delimiter) {
- $counts[$delimiter][] = isset($countLine[$delimiter])
- ? $countLine[$delimiter]
- : 0;
+ $counts[$delimiter][] = $countLine[$delimiter]
+ ?? 0;
}
}
diff --git a/src/PhpSpreadsheet/Reader/Gnumeric.php b/src/PhpSpreadsheet/Reader/Gnumeric.php
index 7445ef1b..44ab701d 100644
--- a/src/PhpSpreadsheet/Reader/Gnumeric.php
+++ b/src/PhpSpreadsheet/Reader/Gnumeric.php
@@ -267,7 +267,7 @@ class Gnumeric extends BaseReader
break;
case 'user-defined':
- list(, $attrName) = explode(':', $attributes['name']);
+ [, $attrName] = explode(':', $attributes['name']);
switch ($attrName) {
case 'publisher':
$docProps->setCompany(trim($propertyValue));
@@ -879,7 +879,7 @@ class Gnumeric extends BaseReader
private static function parseGnumericColour($gnmColour)
{
- list($gnmR, $gnmG, $gnmB) = explode(':', $gnmColour);
+ [$gnmR, $gnmG, $gnmB] = explode(':', $gnmColour);
$gnmR = substr(str_pad($gnmR, 4, '0', STR_PAD_RIGHT), 0, 2);
$gnmG = substr(str_pad($gnmG, 4, '0', STR_PAD_RIGHT), 0, 2);
$gnmB = substr(str_pad($gnmB, 4, '0', STR_PAD_RIGHT), 0, 2);
diff --git a/src/PhpSpreadsheet/Reader/Html.php b/src/PhpSpreadsheet/Reader/Html.php
index 75db7591..d599424d 100644
--- a/src/PhpSpreadsheet/Reader/Html.php
+++ b/src/PhpSpreadsheet/Reader/Html.php
@@ -920,7 +920,7 @@ class Html extends BaseReader
*/
private function setBorderStyle(Style $cellStyle, $styleValue, $type)
{
- list(, $borderStyle, $color) = explode(' ', $styleValue);
+ [, $borderStyle, $color] = explode(' ', $styleValue);
$cellStyle->applyFromArray([
'borders' => [
diff --git a/src/PhpSpreadsheet/Reader/Ods.php b/src/PhpSpreadsheet/Reader/Ods.php
index 51462c20..5fff07aa 100644
--- a/src/PhpSpreadsheet/Reader/Ods.php
+++ b/src/PhpSpreadsheet/Reader/Ods.php
@@ -490,7 +490,7 @@ class Ods extends BaseReader
$dateObj = new DateTime($value, $GMT);
$dateObj->setTimeZone($timezoneObj);
- list($year, $month, $day, $hour, $minute, $second) = explode(
+ [$year, $month, $day, $hour, $minute, $second] = explode(
' ',
$dateObj->format('Y m d H i s')
);
diff --git a/src/PhpSpreadsheet/Reader/Slk.php b/src/PhpSpreadsheet/Reader/Slk.php
index c1013c2e..d73f598c 100644
--- a/src/PhpSpreadsheet/Reader/Slk.php
+++ b/src/PhpSpreadsheet/Reader/Slk.php
@@ -384,7 +384,7 @@ class Slk extends BaseReader
break;
case 'W':
- list($startCol, $endCol, $columnWidth) = explode(' ', substr($rowDatum, 1));
+ [$startCol, $endCol, $columnWidth] = explode(' ', substr($rowDatum, 1));
break;
case 'S':
diff --git a/src/PhpSpreadsheet/Reader/Xls.php b/src/PhpSpreadsheet/Reader/Xls.php
index bd2c9c1d..36b50f0a 100644
--- a/src/PhpSpreadsheet/Reader/Xls.php
+++ b/src/PhpSpreadsheet/Reader/Xls.php
@@ -1089,8 +1089,8 @@ class Xls extends BaseReader
}
// calculate the width and height of the shape
- list($startColumn, $startRow) = Coordinate::coordinateFromString($spContainer->getStartCoordinates());
- list($endColumn, $endRow) = Coordinate::coordinateFromString($spContainer->getEndCoordinates());
+ [$startColumn, $startRow] = Coordinate::coordinateFromString($spContainer->getStartCoordinates());
+ [$endColumn, $endRow] = Coordinate::coordinateFromString($spContainer->getEndCoordinates());
$startOffsetX = $spContainer->getStartOffsetX();
$startOffsetY = $spContainer->getStartOffsetY();
@@ -1175,7 +1175,7 @@ class Xls extends BaseReader
// treat SHAREDFMLA records
if ($this->version == self::XLS_BIFF8) {
foreach ($this->sharedFormulaParts as $cell => $baseCell) {
- list($column, $row) = Coordinate::coordinateFromString($cell);
+ [$column, $row] = Coordinate::coordinateFromString($cell);
if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($column, $row, $this->phpSheet->getTitle())) {
$formula = $this->getFormulaFromStructure($this->sharedFormulas[$baseCell], $cell);
$this->phpSheet->getCell($cell)->setValueExplicit('=' . $formula, DataType::TYPE_FORMULA);
@@ -1251,8 +1251,8 @@ class Xls extends BaseReader
$coordinateStrings = explode(':', $extractedRange);
if (count($coordinateStrings) == 2) {
- list($firstColumn, $firstRow) = Coordinate::coordinateFromString($coordinateStrings[0]);
- list($lastColumn, $lastRow) = Coordinate::coordinateFromString($coordinateStrings[1]);
+ [$firstColumn, $firstRow] = Coordinate::coordinateFromString($coordinateStrings[0]);
+ [$lastColumn, $lastRow] = Coordinate::coordinateFromString($coordinateStrings[1]);
if ($firstColumn == 'A' and $lastColumn == 'IV') {
// then we have repeating rows
@@ -5355,12 +5355,12 @@ class Xls extends BaseReader
$formulaStrings = [];
foreach ($tokens as $token) {
// initialize spaces
- $space0 = isset($space0) ? $space0 : ''; // spaces before next token, not tParen
- $space1 = isset($space1) ? $space1 : ''; // carriage returns before next token, not tParen
- $space2 = isset($space2) ? $space2 : ''; // spaces before opening parenthesis
- $space3 = isset($space3) ? $space3 : ''; // carriage returns before opening parenthesis
- $space4 = isset($space4) ? $space4 : ''; // spaces before closing parenthesis
- $space5 = isset($space5) ? $space5 : ''; // carriage returns before closing parenthesis
+ $space0 = $space0 ?? ''; // spaces before next token, not tParen
+ $space1 = $space1 ?? ''; // carriage returns before next token, not tParen
+ $space2 = $space2 ?? ''; // spaces before opening parenthesis
+ $space3 = $space3 ?? ''; // carriage returns before opening parenthesis
+ $space4 = $space4 ?? ''; // spaces before closing parenthesis
+ $space5 = $space5 ?? ''; // carriage returns before closing parenthesis
switch ($token['name']) {
case 'tAdd': // addition
@@ -7145,7 +7145,7 @@ class Xls extends BaseReader
*/
private function readBIFF8CellAddressB($cellAddressStructure, $baseCell = 'A1')
{
- list($baseCol, $baseRow) = Coordinate::coordinateFromString($baseCell);
+ [$baseCol, $baseRow] = Coordinate::coordinateFromString($baseCell);
$baseCol = Coordinate::columnIndexFromString($baseCol) - 1;
// offset: 0; size: 2; index to row (0... 65535) (or offset (-32768... 32767))
@@ -7328,7 +7328,7 @@ class Xls extends BaseReader
*/
private function readBIFF8CellRangeAddressB($subData, $baseCell = 'A1')
{
- list($baseCol, $baseRow) = Coordinate::coordinateFromString($baseCell);
+ [$baseCol, $baseRow] = Coordinate::coordinateFromString($baseCell);
$baseCol = Coordinate::columnIndexFromString($baseCol) - 1;
// TODO: if cell range is just a single cell, should this funciton
diff --git a/src/PhpSpreadsheet/Reader/Xlsx.php b/src/PhpSpreadsheet/Reader/Xlsx.php
index 5372fef9..1c1351f7 100644
--- a/src/PhpSpreadsheet/Reader/Xlsx.php
+++ b/src/PhpSpreadsheet/Reader/Xlsx.php
@@ -1352,7 +1352,7 @@ class Xlsx extends BaseReader
$rangeSets = preg_split("/('?(?:.*?)'?(?:![A-Z0-9]+:[A-Z0-9]+)),?/", $extractedRange, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
$newRangeSets = [];
foreach ($rangeSets as $rangeSet) {
- list($sheetName, $rangeSet) = Worksheet::extractSheetTitle($rangeSet, true);
+ [$sheetName, $rangeSet] = Worksheet::extractSheetTitle($rangeSet, true);
if (strpos($rangeSet, ':') === false) {
$rangeSet = $rangeSet . ':' . $rangeSet;
}
@@ -1426,7 +1426,7 @@ class Xlsx extends BaseReader
$locatedSheet = $excel->getSheetByName($extractedSheetName);
// Modify range
- list($worksheetName, $extractedRange) = Worksheet::extractSheetTitle($extractedRange, true);
+ [$worksheetName, $extractedRange] = Worksheet::extractSheetTitle($extractedRange, true);
}
if ($locatedSheet !== null) {
@@ -1841,7 +1841,7 @@ class Xlsx extends BaseReader
private static function getArrayItem($array, $key = 0)
{
- return isset($array[$key]) ? $array[$key] : null;
+ return $array[$key] ?? null;
}
private static function dirAdd($base, $add)
diff --git a/src/PhpSpreadsheet/Reader/Xlsx/Properties.php b/src/PhpSpreadsheet/Reader/Xlsx/Properties.php
index bc6bba2c..bf8e57d8 100644
--- a/src/PhpSpreadsheet/Reader/Xlsx/Properties.php
+++ b/src/PhpSpreadsheet/Reader/Xlsx/Properties.php
@@ -86,6 +86,6 @@ class Properties
private static function getArrayItem(array $array, $key = 0)
{
- return isset($array[$key]) ? $array[$key] : null;
+ return $array[$key] ?? null;
}
}
diff --git a/src/PhpSpreadsheet/Reader/Xlsx/Styles.php b/src/PhpSpreadsheet/Reader/Xlsx/Styles.php
index c06564a3..af52a6b2 100644
--- a/src/PhpSpreadsheet/Reader/Xlsx/Styles.php
+++ b/src/PhpSpreadsheet/Reader/Xlsx/Styles.php
@@ -260,6 +260,6 @@ class Styles extends BaseParserClass
private static function getArrayItem($array, $key = 0)
{
- return isset($array[$key]) ? $array[$key] : null;
+ return $array[$key] ?? null;
}
}
diff --git a/src/PhpSpreadsheet/ReferenceHelper.php b/src/PhpSpreadsheet/ReferenceHelper.php
index 13dbe042..143e80d8 100644
--- a/src/PhpSpreadsheet/ReferenceHelper.php
+++ b/src/PhpSpreadsheet/ReferenceHelper.php
@@ -82,11 +82,8 @@ class ReferenceHelper
*/
public static function cellSort($a, $b)
{
- // TODO Scrutinizer doesn't like sscanf($a, '%[A-Z]%d', $ac, $ar), and we can't use short list() syntax
- // [$ac, $ar] = sscanf($a, '%[A-Z]%d') while retaining PHP 5.6 support.
- // Switch when we drop support for 5.6
- list($ac, $ar) = sscanf($a, '%[A-Z]%d');
- list($bc, $br) = sscanf($b, '%[A-Z]%d');
+ [$ac, $ar] = sscanf($a, '%[A-Z]%d');
+ [$bc, $br] = sscanf($b, '%[A-Z]%d');
if ($ar === $br) {
return strcasecmp(strlen($ac) . $ac, strlen($bc) . $bc);
@@ -106,11 +103,8 @@ class ReferenceHelper
*/
public static function cellReverseSort($a, $b)
{
- // TODO Scrutinizer doesn't like sscanf($a, '%[A-Z]%d', $ac, $ar), and we can't use short list() syntax
- // [$ac, $ar] = sscanf($a, '%[A-Z]%d') while retaining PHP 5.6 support.
- // Switch when we drop support for 5.6
- list($ac, $ar) = sscanf($a, '%[A-Z]%d');
- list($bc, $br) = sscanf($b, '%[A-Z]%d');
+ [$ac, $ar] = sscanf($a, '%[A-Z]%d');
+ [$bc, $br] = sscanf($b, '%[A-Z]%d');
if ($ar === $br) {
return 1 - strcasecmp(strlen($ac) . $ac, strlen($bc) . $bc);
@@ -132,7 +126,7 @@ class ReferenceHelper
*/
private static function cellAddressInDeleteRange($cellAddress, $beforeRow, $pNumRows, $beforeColumnIndex, $pNumCols)
{
- list($cellColumn, $cellRow) = Coordinate::coordinateFromString($cellAddress);
+ [$cellColumn, $cellRow] = Coordinate::coordinateFromString($cellAddress);
$cellColumnIndex = Coordinate::columnIndexFromString($cellColumn);
// Is cell within the range of rows/columns if we're deleting
if ($pNumRows < 0 &&
@@ -319,7 +313,7 @@ class ReferenceHelper
if (!empty($aColumnDimensions)) {
foreach ($aColumnDimensions as $objColumnDimension) {
$newReference = $this->updateCellReference($objColumnDimension->getColumnIndex() . '1', $pBefore, $pNumCols, $pNumRows);
- list($newReference) = Coordinate::coordinateFromString($newReference);
+ [$newReference] = Coordinate::coordinateFromString($newReference);
if ($objColumnDimension->getColumnIndex() != $newReference) {
$objColumnDimension->setColumnIndex($newReference);
}
@@ -344,7 +338,7 @@ class ReferenceHelper
if (!empty($aRowDimensions)) {
foreach ($aRowDimensions as $objRowDimension) {
$newReference = $this->updateCellReference('A' . $objRowDimension->getRowIndex(), $pBefore, $pNumCols, $pNumRows);
- list(, $newReference) = Coordinate::coordinateFromString($newReference);
+ [, $newReference] = Coordinate::coordinateFromString($newReference);
if ($objRowDimension->getRowIndex() != $newReference) {
$objRowDimension->setRowIndex($newReference);
}
@@ -378,7 +372,7 @@ class ReferenceHelper
$allCoordinates = $pSheet->getCoordinates();
// Get coordinate of $pBefore
- list($beforeColumn, $beforeRow) = Coordinate::coordinateFromString($pBefore);
+ [$beforeColumn, $beforeRow] = Coordinate::coordinateFromString($pBefore);
$beforeColumnIndex = Coordinate::columnIndexFromString($beforeColumn);
// Clear cells if we are removing columns or rows
@@ -539,7 +533,7 @@ class ReferenceHelper
$row = 0;
sscanf($pBefore, '%[A-Z]%d', $column, $row);
$columnIndex = Coordinate::columnIndexFromString($column);
- list($rangeStart, $rangeEnd) = Coordinate::rangeBoundaries($autoFilterRange);
+ [$rangeStart, $rangeEnd] = Coordinate::rangeBoundaries($autoFilterRange);
if ($columnIndex <= $rangeEnd[0]) {
if ($pNumCols < 0) {
// If we're actually deleting any columns that fall within the autofilter range,
@@ -707,7 +701,7 @@ class ReferenceHelper
if (($match[2] == '') || (trim($match[2], "'") == $sheetName)) {
$toString = ($match[2] > '') ? $match[2] . '!' : '';
$toString .= $modified3 . ':' . $modified4;
- list($column, $row) = Coordinate::coordinateFromString($match[3]);
+ [$column, $row] = Coordinate::coordinateFromString($match[3]);
// Max worksheet size is 1,048,576 rows by 16,384 columns in Excel 2007, so our adjustments need to be at least one digit more
$column = Coordinate::columnIndexFromString(trim($column, '$')) + 100000;
$row = trim($row, '$') + 10000000;
@@ -733,7 +727,7 @@ class ReferenceHelper
if (($match[2] == '') || (trim($match[2], "'") == $sheetName)) {
$toString = ($match[2] > '') ? $match[2] . '!' : '';
$toString .= $modified3;
- list($column, $row) = Coordinate::coordinateFromString($match[3]);
+ [$column, $row] = Coordinate::coordinateFromString($match[3]);
// Max worksheet size is 1,048,576 rows by 16,384 columns in Excel 2007, so our adjustments need to be at least one digit more
$column = Coordinate::columnIndexFromString(trim($column, '$')) + 100000;
$row = trim($row, '$') + 10000000;
@@ -881,10 +875,10 @@ class ReferenceHelper
}
// Get coordinate of $pBefore
- list($beforeColumn, $beforeRow) = Coordinate::coordinateFromString($pBefore);
+ [$beforeColumn, $beforeRow] = Coordinate::coordinateFromString($pBefore);
// Get coordinate of $pCellReference
- list($newColumn, $newRow) = Coordinate::coordinateFromString($pCellReference);
+ [$newColumn, $newRow] = Coordinate::coordinateFromString($pCellReference);
// Verify which parts should be updated
$updateColumn = (($newColumn[0] != '$') && ($beforeColumn[0] != '$') && (Coordinate::columnIndexFromString($newColumn) >= Coordinate::columnIndexFromString($beforeColumn)));
diff --git a/src/PhpSpreadsheet/Settings.php b/src/PhpSpreadsheet/Settings.php
index c297dd68..03fa6ac2 100644
--- a/src/PhpSpreadsheet/Settings.php
+++ b/src/PhpSpreadsheet/Settings.php
@@ -30,7 +30,6 @@ class Settings
* 7.2 < 7.2.1
* 7.1 < 7.1.13
* 7.0 < 7.0.27
- * 5.6 ANY
* then you may need to disable this check to prevent unwanted behaviour in other threads
* SECURITY WARNING: Changing this flag is not recommended.
*
@@ -122,7 +121,6 @@ class Settings
* 7.2 < 7.2.1
* 7.1 < 7.1.13
* 7.0 < 7.0.27
- * 5.6 ANY
* then you may need to disable this check to prevent unwanted behaviour in other threads
* SECURITY WARNING: Changing this flag to false is not recommended.
*
diff --git a/src/PhpSpreadsheet/Shared/JAMA/Matrix.php b/src/PhpSpreadsheet/Shared/JAMA/Matrix.php
index b3d82d46..17f32107 100644
--- a/src/PhpSpreadsheet/Shared/JAMA/Matrix.php
+++ b/src/PhpSpreadsheet/Shared/JAMA/Matrix.php
@@ -174,7 +174,7 @@ class Matrix
switch ($match) {
//A($i0...; $j0...)
case 'integer,integer':
- list($i0, $j0) = $args;
+ [$i0, $j0] = $args;
if ($i0 >= 0) {
$m = $this->m - $i0;
} else {
@@ -197,7 +197,7 @@ class Matrix
break;
//A($i0...$iF; $j0...$jF)
case 'integer,integer,integer,integer':
- list($i0, $iF, $j0, $jF) = $args;
+ [$i0, $iF, $j0, $jF] = $args;
if (($iF > $i0) && ($this->m >= $iF) && ($i0 >= 0)) {
$m = $iF - $i0;
} else {
@@ -220,7 +220,7 @@ class Matrix
break;
//$R = array of row indices; $C = array of column indices
case 'array,array':
- list($RL, $CL) = $args;
+ [$RL, $CL] = $args;
if (count($RL) > 0) {
$m = count($RL);
} else {
@@ -243,7 +243,7 @@ class Matrix
break;
//A($i0...$iF); $CL = array of column indices
case 'integer,integer,array':
- list($i0, $iF, $CL) = $args;
+ [$i0, $iF, $CL] = $args;
if (($iF > $i0) && ($this->m >= $iF) && ($i0 >= 0)) {
$m = $iF - $i0;
} else {
@@ -266,7 +266,7 @@ class Matrix
break;
//$RL = array of row indices
case 'array,integer,integer':
- list($RL, $j0, $jF) = $args;
+ [$RL, $j0, $jF] = $args;
if (count($RL) > 0) {
$m = count($RL);
} else {
diff --git a/src/PhpSpreadsheet/Shared/OLE.php b/src/PhpSpreadsheet/Shared/OLE.php
index f09fbc92..efa7522f 100644
--- a/src/PhpSpreadsheet/Shared/OLE.php
+++ b/src/PhpSpreadsheet/Shared/OLE.php
@@ -253,7 +253,7 @@ class OLE
*/
private static function _readInt1($fh)
{
- list(, $tmp) = unpack('c', fread($fh, 1));
+ [, $tmp] = unpack('c', fread($fh, 1));
return $tmp;
}
@@ -267,7 +267,7 @@ class OLE
*/
private static function _readInt2($fh)
{
- list(, $tmp) = unpack('v', fread($fh, 2));
+ [, $tmp] = unpack('v', fread($fh, 2));
return $tmp;
}
@@ -281,7 +281,7 @@ class OLE
*/
private static function _readInt4($fh)
{
- list(, $tmp) = unpack('V', fread($fh, 4));
+ [, $tmp] = unpack('V', fread($fh, 4));
return $tmp;
}
diff --git a/src/PhpSpreadsheet/Shared/OLE/PPS/Root.php b/src/PhpSpreadsheet/Shared/OLE/PPS/Root.php
index 578e08fa..c52cea23 100644
--- a/src/PhpSpreadsheet/Shared/OLE/PPS/Root.php
+++ b/src/PhpSpreadsheet/Shared/OLE/PPS/Root.php
@@ -118,7 +118,7 @@ class Root extends PPS
$aList = [];
PPS::_savePpsSetPnt($aList, [$this]);
// calculate values for header
- list($iSBDcnt, $iBBcnt, $iPPScnt) = $this->_calcSize($aList); //, $rhInfo);
+ [$iSBDcnt, $iBBcnt, $iPPScnt] = $this->_calcSize($aList); //, $rhInfo);
// Save Header
$this->_saveHeader($iSBDcnt, $iBBcnt, $iPPScnt);
@@ -149,7 +149,7 @@ class Root extends PPS
public function _calcSize(&$raList)
{
// Calculate Basic Setting
- list($iSBDcnt, $iBBcnt, $iPPScnt) = [0, 0, 0];
+ [$iSBDcnt, $iBBcnt, $iPPScnt] = [0, 0, 0];
$iSmallLen = 0;
$iSBcnt = 0;
$iCount = count($raList);
diff --git a/src/PhpSpreadsheet/Shared/Xls.php b/src/PhpSpreadsheet/Shared/Xls.php
index 177779f8..51407ade 100644
--- a/src/PhpSpreadsheet/Shared/Xls.php
+++ b/src/PhpSpreadsheet/Shared/Xls.php
@@ -211,7 +211,7 @@ class Xls
*/
public static function oneAnchor2twoAnchor($sheet, $coordinates, $offsetX, $offsetY, $width, $height)
{
- list($column, $row) = Coordinate::coordinateFromString($coordinates);
+ [$column, $row] = Coordinate::coordinateFromString($coordinates);
$col_start = Coordinate::columnIndexFromString($column);
$row_start = $row - 1;
diff --git a/src/PhpSpreadsheet/Spreadsheet.php b/src/PhpSpreadsheet/Spreadsheet.php
index 8eadcbe8..04a9f1df 100644
--- a/src/PhpSpreadsheet/Spreadsheet.php
+++ b/src/PhpSpreadsheet/Spreadsheet.php
@@ -721,7 +721,7 @@ class Spreadsheet
{
$worksheetCount = count($this->workSheetCollection);
for ($i = 0; $i < $worksheetCount; ++$i) {
- if ($this->workSheetCollection[$i]->getTitle() === $pName) {
+ if ($this->workSheetCollection[$i]->getTitle() === trim($pName, "'")) {
return $this->workSheetCollection[$i];
}
}
diff --git a/src/PhpSpreadsheet/Style/NumberFormat.php b/src/PhpSpreadsheet/Style/NumberFormat.php
index 785c1f0c..ac64b20e 100644
--- a/src/PhpSpreadsheet/Style/NumberFormat.php
+++ b/src/PhpSpreadsheet/Style/NumberFormat.php
@@ -706,7 +706,7 @@ class NumberFormat extends Supervisor
if (preg_match('/\[\$(.*)\]/u', $format, $m)) {
// Currency or Accounting
$currencyCode = $m[1];
- list($currencyCode) = explode('-', $currencyCode);
+ [$currencyCode] = explode('-', $currencyCode);
if ($currencyCode == '') {
$currencyCode = StringHelper::getCurrencyCode();
}
@@ -807,7 +807,7 @@ class NumberFormat extends Supervisor
// Additional formatting provided by callback function
if ($callBack !== null) {
- list($writerInstance, $function) = $callBack;
+ [$writerInstance, $function] = $callBack;
$value = $writerInstance->$function($value, $formatColor);
}
diff --git a/src/PhpSpreadsheet/Style/Style.php b/src/PhpSpreadsheet/Style/Style.php
index fbe07c2c..9cdfc1b1 100644
--- a/src/PhpSpreadsheet/Style/Style.php
+++ b/src/PhpSpreadsheet/Style/Style.php
@@ -204,7 +204,7 @@ class Style extends Supervisor
$rangeA = $pRange;
$rangeB = $pRange;
} else {
- list($rangeA, $rangeB) = explode(':', $pRange);
+ [$rangeA, $rangeB] = explode(':', $pRange);
}
// Calculate range outer borders
diff --git a/src/PhpSpreadsheet/Worksheet/AutoFilter.php b/src/PhpSpreadsheet/Worksheet/AutoFilter.php
index 494948a7..b4449254 100644
--- a/src/PhpSpreadsheet/Worksheet/AutoFilter.php
+++ b/src/PhpSpreadsheet/Worksheet/AutoFilter.php
@@ -90,7 +90,7 @@ class AutoFilter
public function setRange($pRange)
{
// extract coordinate
- list($worksheet, $pRange) = Worksheet::extractSheetTitle($pRange, true);
+ [$worksheet, $pRange] = Worksheet::extractSheetTitle($pRange, true);
if (strpos($pRange, ':') !== false) {
$this->range = $pRange;
@@ -105,7 +105,7 @@ class AutoFilter
$this->columns = [];
} else {
// Discard any column rules that are no longer valid within this range
- list($rangeStart, $rangeEnd) = Coordinate::rangeBoundaries($this->range);
+ [$rangeStart, $rangeEnd] = Coordinate::rangeBoundaries($this->range);
foreach ($this->columns as $key => $value) {
$colIndex = Coordinate::columnIndexFromString($key);
if (($rangeStart[0] > $colIndex) || ($rangeEnd[0] < $colIndex)) {
@@ -143,7 +143,7 @@ class AutoFilter
}
$columnIndex = Coordinate::columnIndexFromString($column);
- list($rangeStart, $rangeEnd) = Coordinate::rangeBoundaries($this->range);
+ [$rangeStart, $rangeEnd] = Coordinate::rangeBoundaries($this->range);
if (($rangeStart[0] > $columnIndex) || ($rangeEnd[0] < $columnIndex)) {
throw new PhpSpreadsheetException('Column is outside of current autofilter range.');
}
@@ -196,7 +196,7 @@ class AutoFilter
*/
public function getColumnByOffset($pColumnOffset)
{
- list($rangeStart, $rangeEnd) = Coordinate::rangeBoundaries($this->range);
+ [$rangeStart, $rangeEnd] = Coordinate::rangeBoundaries($this->range);
$pColumn = Coordinate::stringFromColumnIndex($rangeStart[0] + $pColumnOffset);
return $this->getColumn($pColumn);
@@ -357,7 +357,7 @@ class AutoFilter
{
$dataSet = $ruleSet['filterRules'];
$join = $ruleSet['join'];
- $customRuleForBlanks = isset($ruleSet['customRuleForBlanks']) ? $ruleSet['customRuleForBlanks'] : false;
+ $customRuleForBlanks = $ruleSet['customRuleForBlanks'] ?? false;
if (!$customRuleForBlanks) {
// Blank cells are always ignored, so return a FALSE
@@ -621,7 +621,7 @@ class AutoFilter
*/
public function showHideRows()
{
- list($rangeStart, $rangeEnd) = Coordinate::rangeBoundaries($this->range);
+ [$rangeStart, $rangeEnd] = Coordinate::rangeBoundaries($this->range);
// The heading row should always be visible
$this->workSheet->getRowDimension($rangeStart[1])->setVisible(true);
diff --git a/src/PhpSpreadsheet/Worksheet/Drawing.php b/src/PhpSpreadsheet/Worksheet/Drawing.php
index ed26006c..8194da31 100644
--- a/src/PhpSpreadsheet/Worksheet/Drawing.php
+++ b/src/PhpSpreadsheet/Worksheet/Drawing.php
@@ -88,7 +88,7 @@ class Drawing extends BaseDrawing
if ($this->width == 0 && $this->height == 0) {
// Get width/height
- list($this->width, $this->height) = getimagesize($pValue);
+ [$this->width, $this->height] = getimagesize($pValue);
}
} else {
throw new PhpSpreadsheetException("File $pValue not found!");
diff --git a/src/PhpSpreadsheet/Worksheet/Worksheet.php b/src/PhpSpreadsheet/Worksheet/Worksheet.php
index 1e525a3f..689c547e 100644
--- a/src/PhpSpreadsheet/Worksheet/Worksheet.php
+++ b/src/PhpSpreadsheet/Worksheet/Worksheet.php
@@ -1561,7 +1561,7 @@ class Worksheet implements IComparable
}
// Calculate range outer borders
- list($rangeStart, $rangeEnd) = Coordinate::rangeBoundaries($pRange . ':' . $pRange);
+ [$rangeStart, $rangeEnd] = Coordinate::rangeBoundaries($pRange . ':' . $pRange);
// Make sure we can loop upwards on rows and columns
if ($rangeStart[0] > $rangeEnd[0] && $rangeStart[1] > $rangeEnd[1]) {
@@ -1601,7 +1601,7 @@ class Worksheet implements IComparable
}
// Calculate range outer borders
- list($rangeStart, $rangeEnd) = Coordinate::rangeBoundaries($pRange . ':' . $pRange);
+ [$rangeStart, $rangeEnd] = Coordinate::rangeBoundaries($pRange . ':' . $pRange);
// Make sure we can loop upwards on rows and columns
if ($rangeStart[0] > $rangeEnd[0] && $rangeStart[1] > $rangeEnd[1]) {
@@ -2424,7 +2424,7 @@ class Worksheet implements IComparable
$pCoordinate = preg_replace('/^(\d+):(\d+)$/', 'A${1}:XFD${2}', $pCoordinate);
if (Coordinate::coordinateIsRange($pCoordinate)) {
- list($first) = Coordinate::splitRange($pCoordinate);
+ [$first] = Coordinate::splitRange($pCoordinate);
$this->activeCell = $first[0];
} else {
$this->activeCell = $pCoordinate;
@@ -2493,7 +2493,7 @@ class Worksheet implements IComparable
}
// start coordinate
- list($startColumn, $startRow) = Coordinate::coordinateFromString($startCell);
+ [$startColumn, $startRow] = Coordinate::coordinateFromString($startCell);
// Loop through $source
foreach ($source as $rowData) {
@@ -2535,7 +2535,7 @@ class Worksheet implements IComparable
// Returnvalue
$returnValue = [];
// Identify the range that we need to extract from the worksheet
- list($rangeStart, $rangeEnd) = Coordinate::rangeBoundaries($pRange);
+ [$rangeStart, $rangeEnd] = Coordinate::rangeBoundaries($pRange);
$minCol = Coordinate::stringFromColumnIndex($rangeStart[0]);
$minRow = $rangeStart[1];
$maxCol = Coordinate::stringFromColumnIndex($rangeEnd[0]);
diff --git a/src/PhpSpreadsheet/Writer/Html.php b/src/PhpSpreadsheet/Writer/Html.php
index 8cd026d3..ebda5c33 100644
--- a/src/PhpSpreadsheet/Writer/Html.php
+++ b/src/PhpSpreadsheet/Writer/Html.php
@@ -643,7 +643,10 @@ class Html extends BaseWriter
} else {
$imageDetails = getimagesize($filename);
if ($fp = fopen($filename, 'rb', 0)) {
- $picture = fread($fp, filesize($filename));
+ $picture = '';
+ while (!feof($fp)) {
+ $picture .= fread($fp, 1024);
+ }
fclose($fp);
// base64 encode the binary data, then break it
// into chunks according to RFC 2045 semantics
@@ -1538,14 +1541,14 @@ class Html extends BaseWriter
// loop through all Excel merged cells
foreach ($sheet->getMergeCells() as $cells) {
- list($cells) = Coordinate::splitRange($cells);
+ [$cells] = Coordinate::splitRange($cells);
$first = $cells[0];
$last = $cells[1];
- list($fc, $fr) = Coordinate::coordinateFromString($first);
+ [$fc, $fr] = Coordinate::coordinateFromString($first);
$fc = Coordinate::columnIndexFromString($fc) - 1;
- list($lc, $lr) = Coordinate::coordinateFromString($last);
+ [$lc, $lr] = Coordinate::coordinateFromString($last);
$lc = Coordinate::columnIndexFromString($lc) - 1;
// loop through the individual cells in the individual merge
diff --git a/src/PhpSpreadsheet/Writer/Ods/Content.php b/src/PhpSpreadsheet/Writer/Ods/Content.php
index 11de0fd3..962f8fff 100644
--- a/src/PhpSpreadsheet/Writer/Ods/Content.php
+++ b/src/PhpSpreadsheet/Writer/Ods/Content.php
@@ -383,7 +383,7 @@ class Content extends WriterPart
}
$mergeRange = Coordinate::splitRange($cell->getMergeRange());
- list($startCell, $endCell) = $mergeRange[0];
+ [$startCell, $endCell] = $mergeRange[0];
$start = Coordinate::coordinateFromString($startCell);
$end = Coordinate::coordinateFromString($endCell);
$columnSpan = Coordinate::columnIndexFromString($end[0]) - Coordinate::columnIndexFromString($start[0]) + 1;
diff --git a/src/PhpSpreadsheet/Writer/Xls.php b/src/PhpSpreadsheet/Writer/Xls.php
index 6dff1342..6932eb1a 100644
--- a/src/PhpSpreadsheet/Writer/Xls.php
+++ b/src/PhpSpreadsheet/Writer/Xls.php
@@ -459,7 +459,7 @@ class Xls extends BaseWriter
if ($drawing instanceof Drawing) {
$filename = $drawing->getPath();
- list($imagesx, $imagesy, $imageFormat) = getimagesize($filename);
+ [$imagesx, $imagesy, $imageFormat] = getimagesize($filename);
switch ($imageFormat) {
case 1: // GIF, not supported by BIFF8, we convert to PNG
diff --git a/src/PhpSpreadsheet/Writer/Xls/Escher.php b/src/PhpSpreadsheet/Writer/Xls/Escher.php
index 1dcef807..1ee2e904 100644
--- a/src/PhpSpreadsheet/Writer/Xls/Escher.php
+++ b/src/PhpSpreadsheet/Writer/Xls/Escher.php
@@ -420,7 +420,7 @@ class Escher
$recType = 0xF010;
// start coordinates
- list($column, $row) = Coordinate::coordinateFromString($this->object->getStartCoordinates());
+ [$column, $row] = Coordinate::coordinateFromString($this->object->getStartCoordinates());
$c1 = Coordinate::columnIndexFromString($column) - 1;
$r1 = $row - 1;
@@ -431,7 +431,7 @@ class Escher
$startOffsetY = $this->object->getStartOffsetY();
// end coordinates
- list($column, $row) = Coordinate::coordinateFromString($this->object->getEndCoordinates());
+ [$column, $row] = Coordinate::coordinateFromString($this->object->getEndCoordinates());
$c2 = Coordinate::columnIndexFromString($column) - 1;
$r2 = $row - 1;
diff --git a/src/PhpSpreadsheet/Writer/Xls/Parser.php b/src/PhpSpreadsheet/Writer/Xls/Parser.php
index 6049e328..625a243d 100644
--- a/src/PhpSpreadsheet/Writer/Xls/Parser.php
+++ b/src/PhpSpreadsheet/Writer/Xls/Parser.php
@@ -608,15 +608,15 @@ class Parser
// TODO: possible class value 0,1,2 check Formula.pm
// Split the range into 2 cell refs
if (preg_match('/^(\$)?([A-Ia-i]?[A-Za-z])(\$)?(\d+)\:(\$)?([A-Ia-i]?[A-Za-z])(\$)?(\d+)$/', $range)) {
- list($cell1, $cell2) = explode(':', $range);
+ [$cell1, $cell2] = explode(':', $range);
} else {
// TODO: use real error codes
throw new WriterException('Unknown range separator');
}
// Convert the cell references
- list($row1, $col1) = $this->cellToPackedRowcol($cell1);
- list($row2, $col2) = $this->cellToPackedRowcol($cell2);
+ [$row1, $col1] = $this->cellToPackedRowcol($cell1);
+ [$row2, $col2] = $this->cellToPackedRowcol($cell2);
// The ptg value depends on the class of the ptg.
if ($class == 0) {
@@ -644,20 +644,20 @@ class Parser
private function convertRange3d($token)
{
// Split the ref at the ! symbol
- list($ext_ref, $range) = PhpspreadsheetWorksheet::extractSheetTitle($token, true);
+ [$ext_ref, $range] = PhpspreadsheetWorksheet::extractSheetTitle($token, true);
// Convert the external reference part (different for BIFF8)
$ext_ref = $this->getRefIndex($ext_ref);
// Split the range into 2 cell refs
- list($cell1, $cell2) = explode(':', $range);
+ [$cell1, $cell2] = explode(':', $range);
// Convert the cell references
if (preg_match('/^(\$)?[A-Ia-i]?[A-Za-z](\$)?(\\d+)$/', $cell1)) {
- list($row1, $col1) = $this->cellToPackedRowcol($cell1);
- list($row2, $col2) = $this->cellToPackedRowcol($cell2);
+ [$row1, $col1] = $this->cellToPackedRowcol($cell1);
+ [$row2, $col2] = $this->cellToPackedRowcol($cell2);
} else { // It's a rows range (like 26:27)
- list($row1, $col1, $row2, $col2) = $this->rangeToPackedRange($cell1 . ':' . $cell2);
+ [$row1, $col1, $row2, $col2] = $this->rangeToPackedRange($cell1 . ':' . $cell2);
}
// The ptg value depends on the class of the ptg.
@@ -677,7 +677,7 @@ class Parser
{
// Convert the cell reference
$cell_array = $this->cellToPackedRowcol($cell);
- list($row, $col) = $cell_array;
+ [$row, $col] = $cell_array;
// The ptg value depends on the class of the ptg.
$ptgRef = pack('C', $this->ptg['ptgRefA']);
@@ -696,13 +696,13 @@ class Parser
private function convertRef3d($cell)
{
// Split the ref at the ! symbol
- list($ext_ref, $cell) = PhpspreadsheetWorksheet::extractSheetTitle($cell, true);
+ [$ext_ref, $cell] = PhpspreadsheetWorksheet::extractSheetTitle($cell, true);
// Convert the external reference part (different for BIFF8)
$ext_ref = $this->getRefIndex($ext_ref);
// Convert the cell reference part
- list($row, $col) = $this->cellToPackedRowcol($cell);
+ [$row, $col] = $this->cellToPackedRowcol($cell);
// The ptg value depends on the class of the ptg.
$ptgRef = pack('C', $this->ptg['ptgRef3dA']);
@@ -756,7 +756,7 @@ class Parser
// Check if there is a sheet range eg., Sheet1:Sheet2.
if (preg_match('/:/', $ext_ref)) {
- list($sheet_name1, $sheet_name2) = explode(':', $ext_ref);
+ [$sheet_name1, $sheet_name2] = explode(':', $ext_ref);
$sheet1 = $this->getSheetIndex($sheet_name1);
if ($sheet1 == -1) {
@@ -769,7 +769,7 @@ class Parser
// Reverse max and min sheet numbers if necessary
if ($sheet1 > $sheet2) {
- list($sheet1, $sheet2) = [$sheet2, $sheet1];
+ [$sheet1, $sheet2] = [$sheet2, $sheet1];
}
} else { // Single sheet name only.
$sheet1 = $this->getSheetIndex($ext_ref);
@@ -843,7 +843,7 @@ class Parser
private function cellToPackedRowcol($cell)
{
$cell = strtoupper($cell);
- list($row, $col, $row_rel, $col_rel) = $this->cellToRowcol($cell);
+ [$row, $col, $row_rel, $col_rel] = $this->cellToRowcol($cell);
if ($col >= 256) {
throw new WriterException("Column in: $cell greater than 255");
}
@@ -1078,7 +1078,7 @@ class Parser
{
$this->currentCharacter = 0;
$this->formula = $formula;
- $this->lookAhead = isset($formula[1]) ? $formula[1] : '';
+ $this->lookAhead = $formula[1] ?? '';
$this->advance();
$this->parseTree = $this->condition();
diff --git a/src/PhpSpreadsheet/Writer/Xls/Worksheet.php b/src/PhpSpreadsheet/Writer/Xls/Worksheet.php
index db63fa34..d8822d80 100644
--- a/src/PhpSpreadsheet/Writer/Xls/Worksheet.php
+++ b/src/PhpSpreadsheet/Writer/Xls/Worksheet.php
@@ -479,7 +479,7 @@ class Worksheet extends BIFFwriter
// Hyperlinks
foreach ($phpSheet->getHyperLinkCollection() as $coordinate => $hyperlink) {
- list($column, $row) = Coordinate::coordinateFromString($coordinate);
+ [$column, $row] = Coordinate::coordinateFromString($coordinate);
$url = $hyperlink->getUrl();
@@ -1355,17 +1355,17 @@ class Worksheet extends BIFFwriter
$selectedCells = Coordinate::splitRange($this->phpSheet->getSelectedCells());
$selectedCells = $selectedCells[0];
if (count($selectedCells) == 2) {
- list($first, $last) = $selectedCells;
+ [$first, $last] = $selectedCells;
} else {
$first = $selectedCells[0];
$last = $selectedCells[0];
}
- list($colFirst, $rwFirst) = Coordinate::coordinateFromString($first);
+ [$colFirst, $rwFirst] = Coordinate::coordinateFromString($first);
$colFirst = Coordinate::columnIndexFromString($colFirst) - 1; // base 0 column index
--$rwFirst; // base 0 row index
- list($colLast, $rwLast) = Coordinate::coordinateFromString($last);
+ [$colLast, $rwLast] = Coordinate::coordinateFromString($last);
$colLast = Coordinate::columnIndexFromString($colLast) - 1; // base 0 column index
--$rwLast; // base 0 row index
@@ -1394,11 +1394,11 @@ class Worksheet extends BIFFwriter
// Swap last row/col for first row/col as necessary
if ($rwFirst > $rwLast) {
- list($rwFirst, $rwLast) = [$rwLast, $rwFirst];
+ [$rwFirst, $rwLast] = [$rwLast, $rwFirst];
}
if ($colFirst > $colLast) {
- list($colFirst, $colLast) = [$colLast, $colFirst];
+ [$colFirst, $colLast] = [$colLast, $colFirst];
}
$header = pack('vv', $record, $length);
@@ -1440,9 +1440,9 @@ class Worksheet extends BIFFwriter
// extract the row and column indexes
$range = Coordinate::splitRange($mergeCell);
- list($first, $last) = $range[0];
- list($firstColumn, $firstRow) = Coordinate::coordinateFromString($first);
- list($lastColumn, $lastRow) = Coordinate::coordinateFromString($last);
+ [$first, $last] = $range[0];
+ [$firstColumn, $firstRow] = Coordinate::coordinateFromString($first);
+ [$lastColumn, $lastRow] = Coordinate::coordinateFromString($last);
$recordData .= pack('vvvv', $firstRow - 1, $lastRow - 1, Coordinate::columnIndexFromString($firstColumn) - 1, Coordinate::columnIndexFromString($lastColumn) - 1);
@@ -1589,11 +1589,11 @@ class Worksheet extends BIFFwriter
{
$panes = [];
if ($this->phpSheet->getFreezePane()) {
- list($column, $row) = Coordinate::coordinateFromString($this->phpSheet->getFreezePane());
+ [$column, $row] = Coordinate::coordinateFromString($this->phpSheet->getFreezePane());
$panes[0] = Coordinate::columnIndexFromString($column) - 1;
$panes[1] = $row - 1;
- list($leftMostColumn, $topRow) = Coordinate::coordinateFromString($this->phpSheet->getTopLeftCell());
+ [$leftMostColumn, $topRow] = Coordinate::coordinateFromString($this->phpSheet->getTopLeftCell());
//Coordinates are zero-based in xls files
$panes[2] = $topRow - 1;
$panes[3] = Coordinate::columnIndexFromString($leftMostColumn) - 1;
@@ -1602,10 +1602,10 @@ class Worksheet extends BIFFwriter
return;
}
- $x = isset($panes[0]) ? $panes[0] : null;
- $y = isset($panes[1]) ? $panes[1] : null;
- $rwTop = isset($panes[2]) ? $panes[2] : null;
- $colLeft = isset($panes[3]) ? $panes[3] : null;
+ $x = $panes[0] ?? null;
+ $y = $panes[1] ?? null;
+ $rwTop = $panes[2] ?? null;
+ $colLeft = $panes[3] ?? null;
if (count($panes) > 4) { // if Active pane was received
$pnnAct = $panes[4];
} else {
@@ -2215,7 +2215,7 @@ class Worksheet extends BIFFwriter
public function insertBitmap($row, $col, $bitmap, $x = 0, $y = 0, $scale_x = 1, $scale_y = 1)
{
$bitmap_array = (is_resource($bitmap) ? $this->processBitmapGd($bitmap) : $this->processBitmap($bitmap));
- list($width, $height, $size, $data) = $bitmap_array;
+ [$width, $height, $size, $data] = $bitmap_array;
// Scale the frame of the image.
$width *= $scale_x;
diff --git a/src/PhpSpreadsheet/Writer/Xlsx/Chart.php b/src/PhpSpreadsheet/Writer/Xlsx/Chart.php
index 625fd16d..3241d403 100644
--- a/src/PhpSpreadsheet/Writer/Xlsx/Chart.php
+++ b/src/PhpSpreadsheet/Writer/Xlsx/Chart.php
@@ -1136,7 +1136,7 @@ class Chart extends WriterPart
$fillColorValues = $plotSeriesValues->getFillColor();
if ($fillColorValues !== null && is_array($fillColorValues)) {
foreach ($plotSeriesValues->getDataValues() as $dataKey => $dataValue) {
- $this->writePlotSeriesValuesElement($objWriter, $dataKey, (isset($fillColorValues[$dataKey]) ? $fillColorValues[$dataKey] : 'FF9900'));
+ $this->writePlotSeriesValuesElement($objWriter, $dataKey, ($fillColorValues[$dataKey] ?? 'FF9900'));
}
} else {
$this->writePlotSeriesValuesElement($objWriter);
diff --git a/src/PhpSpreadsheet/Writer/Xlsx/Comments.php b/src/PhpSpreadsheet/Writer/Xlsx/Comments.php
index 8b08f31f..a95298af 100644
--- a/src/PhpSpreadsheet/Writer/Xlsx/Comments.php
+++ b/src/PhpSpreadsheet/Writer/Xlsx/Comments.php
@@ -175,7 +175,7 @@ class Comments extends WriterPart
private function writeVMLComment(XMLWriter $objWriter, $pCellReference, Comment $pComment)
{
// Metadata
- list($column, $row) = Coordinate::coordinateFromString($pCellReference);
+ [$column, $row] = Coordinate::coordinateFromString($pCellReference);
$column = Coordinate::columnIndexFromString($column);
$id = 1024 + $column + $row;
$id = substr($id, 0, 4);
diff --git a/src/PhpSpreadsheet/Writer/Xlsx/Workbook.php b/src/PhpSpreadsheet/Writer/Xlsx/Workbook.php
index b9f8f99b..fd936748 100644
--- a/src/PhpSpreadsheet/Writer/Xlsx/Workbook.php
+++ b/src/PhpSpreadsheet/Writer/Xlsx/Workbook.php
@@ -339,7 +339,7 @@ class Workbook extends WriterPart
$range = Coordinate::splitRange($autoFilterRange);
$range = $range[0];
// Strip any worksheet ref so we can make the cell ref absolute
- list($ws, $range[0]) = Worksheet::extractSheetTitle($range[0], true);
+ [$ws, $range[0]] = Worksheet::extractSheetTitle($range[0], true);
$range[0] = Coordinate::absoluteCoordinate($range[0]);
$range[1] = Coordinate::absoluteCoordinate($range[1]);
diff --git a/src/PhpSpreadsheet/Writer/Xlsx/Worksheet.php b/src/PhpSpreadsheet/Writer/Xlsx/Worksheet.php
index 065eaaf1..07bf39bf 100644
--- a/src/PhpSpreadsheet/Writer/Xlsx/Worksheet.php
+++ b/src/PhpSpreadsheet/Writer/Xlsx/Worksheet.php
@@ -251,7 +251,7 @@ class Worksheet extends WriterPart
// Pane
$pane = '';
if ($pSheet->getFreezePane()) {
- list($xSplit, $ySplit) = Coordinate::coordinateFromString($pSheet->getFreezePane());
+ [$xSplit, $ySplit] = Coordinate::coordinateFromString($pSheet->getFreezePane());
$xSplit = Coordinate::columnIndexFromString($xSplit);
--$xSplit;
--$ySplit;
@@ -752,7 +752,7 @@ class Worksheet extends WriterPart
$range = Coordinate::splitRange($autoFilterRange);
$range = $range[0];
// Strip any worksheet ref
- list($ws, $range[0]) = PhpspreadsheetWorksheet::extractSheetTitle($range[0], true);
+ [$ws, $range[0]] = PhpspreadsheetWorksheet::extractSheetTitle($range[0], true);
$range = implode(':', $range);
$objWriter->writeAttribute('ref', str_replace('$', '', $range));
diff --git a/tests/PhpSpreadsheetTests/Calculation/CalculationTest.php b/tests/PhpSpreadsheetTests/Calculation/CalculationTest.php
index 86ca7a3e..4b81fbf4 100644
--- a/tests/PhpSpreadsheetTests/Calculation/CalculationTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/CalculationTest.php
@@ -52,7 +52,7 @@ class CalculationTest extends TestCase
*/
public function testGetFunctions($category, $functionCall, $argumentCount)
{
- self::assertInternalType('callable', $functionCall);
+ self::assertIsCallable($functionCall);
}
public function providerGetFunctions()
diff --git a/tests/PhpSpreadsheetTests/Calculation/EngineeringTest.php b/tests/PhpSpreadsheetTests/Calculation/EngineeringTest.php
index 09da20c9..003ef206 100644
--- a/tests/PhpSpreadsheetTests/Calculation/EngineeringTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/EngineeringTest.php
@@ -37,7 +37,7 @@ class EngineeringTest extends TestCase
public function testBESSELI($expectedResult, ...$args)
{
$result = Engineering::BESSELI(...$args);
- self::assertEquals($expectedResult, $result, null, self::BESSEL_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::BESSEL_PRECISION);
}
public function providerBESSELI()
@@ -53,7 +53,7 @@ class EngineeringTest extends TestCase
public function testBESSELJ($expectedResult, ...$args)
{
$result = Engineering::BESSELJ(...$args);
- self::assertEquals($expectedResult, $result, null, self::BESSEL_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::BESSEL_PRECISION);
}
public function providerBESSELJ()
@@ -69,7 +69,7 @@ class EngineeringTest extends TestCase
public function testBESSELK($expectedResult, ...$args)
{
$result = Engineering::BESSELK(...$args);
- self::assertEquals($expectedResult, $result, null, self::BESSEL_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::BESSEL_PRECISION);
}
public function providerBESSELK()
@@ -85,7 +85,7 @@ class EngineeringTest extends TestCase
public function testBESSELY($expectedResult, ...$args)
{
$result = Engineering::BESSELY(...$args);
- self::assertEquals($expectedResult, $result, null, self::BESSEL_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::BESSEL_PRECISION);
}
public function providerBESSELY()
@@ -100,7 +100,7 @@ class EngineeringTest extends TestCase
*/
public function testParseComplex()
{
- list($real, $imaginary, $suffix) = [1.23e-4, 5.67e+8, 'j'];
+ [$real, $imaginary, $suffix] = [1.23e-4, 5.67e+8, 'j'];
$result = Engineering::parseComplex('1.23e-4+5.67e+8j');
$this->assertArrayHasKey('real', $result);
@@ -136,7 +136,7 @@ class EngineeringTest extends TestCase
public function testIMAGINARY($expectedResult, $value)
{
$result = Engineering::IMAGINARY($value);
- self::assertEquals($expectedResult, $result, null, self::COMPLEX_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::COMPLEX_PRECISION);
}
public function providerIMAGINARY()
@@ -153,7 +153,7 @@ class EngineeringTest extends TestCase
public function testIMREAL($expectedResult, $value)
{
$result = Engineering::IMREAL($value);
- self::assertEquals($expectedResult, $result, null, self::COMPLEX_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::COMPLEX_PRECISION);
}
public function providerIMREAL()
@@ -170,7 +170,7 @@ class EngineeringTest extends TestCase
public function testIMABS($expectedResult, $value)
{
$result = Engineering::IMABS($value);
- self::assertEquals($expectedResult, $result, null, self::COMPLEX_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::COMPLEX_PRECISION);
}
public function providerIMABS()
@@ -187,7 +187,7 @@ class EngineeringTest extends TestCase
public function testIMARGUMENT($expectedResult, $value)
{
$result = Engineering::IMARGUMENT($value);
- self::assertEquals($expectedResult, $result, null, self::COMPLEX_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::COMPLEX_PRECISION);
}
public function providerIMARGUMENT()
@@ -618,7 +618,7 @@ class EngineeringTest extends TestCase
public function testERF($expectedResult, ...$args)
{
$result = Engineering::ERF(...$args);
- self::assertEquals($expectedResult, $result, null, self::ERF_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::ERF_PRECISION);
}
public function providerERF()
@@ -634,7 +634,7 @@ class EngineeringTest extends TestCase
public function testERFPRECISE($expectedResult, ...$args)
{
$result = Engineering::ERFPRECISE(...$args);
- self::assertEquals($expectedResult, $result, null, self::ERF_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::ERF_PRECISION);
}
public function providerERFPRECISE()
@@ -650,7 +650,7 @@ class EngineeringTest extends TestCase
public function testERFC($expectedResult, ...$args)
{
$result = Engineering::ERFC(...$args);
- self::assertEquals($expectedResult, $result, null, self::ERF_PRECISION);
+ self::assertEquals($expectedResult, $result, '', self::ERF_PRECISION);
}
public function providerERFC()
@@ -714,7 +714,7 @@ class EngineeringTest extends TestCase
public function testDEC2BIN($expectedResult, ...$args)
{
$result = Engineering::DECTOBIN(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerDEC2BIN()
@@ -730,7 +730,7 @@ class EngineeringTest extends TestCase
public function testDEC2HEX($expectedResult, ...$args)
{
$result = Engineering::DECTOHEX(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerDEC2HEX()
@@ -746,7 +746,7 @@ class EngineeringTest extends TestCase
public function testDEC2OCT($expectedResult, ...$args)
{
$result = Engineering::DECTOOCT(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerDEC2OCT()
@@ -762,7 +762,7 @@ class EngineeringTest extends TestCase
public function testHEX2BIN($expectedResult, ...$args)
{
$result = Engineering::HEXTOBIN(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerHEX2BIN()
@@ -778,7 +778,7 @@ class EngineeringTest extends TestCase
public function testHEX2DEC($expectedResult, ...$args)
{
$result = Engineering::HEXTODEC(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerHEX2DEC()
@@ -794,7 +794,7 @@ class EngineeringTest extends TestCase
public function testHEX2OCT($expectedResult, ...$args)
{
$result = Engineering::HEXTOOCT(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerHEX2OCT()
@@ -810,7 +810,7 @@ class EngineeringTest extends TestCase
public function testOCT2BIN($expectedResult, ...$args)
{
$result = Engineering::OCTTOBIN(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerOCT2BIN()
@@ -826,7 +826,7 @@ class EngineeringTest extends TestCase
public function testOCT2DEC($expectedResult, ...$args)
{
$result = Engineering::OCTTODEC(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerOCT2DEC()
@@ -842,7 +842,7 @@ class EngineeringTest extends TestCase
public function testOCT2HEX($expectedResult, ...$args)
{
$result = Engineering::OCTTOHEX(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerOCT2HEX()
@@ -859,7 +859,7 @@ class EngineeringTest extends TestCase
public function testBITAND($expectedResult, array $args)
{
$result = Engineering::BITAND(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerBITAND()
@@ -876,7 +876,7 @@ class EngineeringTest extends TestCase
public function testBITOR($expectedResult, array $args)
{
$result = Engineering::BITOR(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerBITOR()
@@ -893,7 +893,7 @@ class EngineeringTest extends TestCase
public function testBITXOR($expectedResult, array $args)
{
$result = Engineering::BITXOR(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerBITXOR()
@@ -910,7 +910,7 @@ class EngineeringTest extends TestCase
public function testBITLSHIFT($expectedResult, array $args)
{
$result = Engineering::BITLSHIFT(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerBITLSHIFT()
@@ -927,7 +927,7 @@ class EngineeringTest extends TestCase
public function testBITRSHIFT($expectedResult, array $args)
{
$result = Engineering::BITRSHIFT(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerBITRSHIFT()
@@ -943,7 +943,7 @@ class EngineeringTest extends TestCase
public function testDELTA($expectedResult, ...$args)
{
$result = Engineering::DELTA(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerDELTA()
@@ -959,7 +959,7 @@ class EngineeringTest extends TestCase
public function testGESTEP($expectedResult, ...$args)
{
$result = Engineering::GESTEP(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerGESTEP()
@@ -970,25 +970,25 @@ class EngineeringTest extends TestCase
public function testGetConversionGroups()
{
$result = Engineering::getConversionGroups();
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
}
public function testGetConversionGroupUnits()
{
$result = Engineering::getConversionGroupUnits();
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
}
public function testGetConversionGroupUnitDetails()
{
$result = Engineering::getConversionGroupUnitDetails();
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
}
public function testGetConversionMultipliers()
{
$result = Engineering::getConversionMultipliers();
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
}
/**
@@ -999,7 +999,7 @@ class EngineeringTest extends TestCase
public function testCONVERTUOM($expectedResult, ...$args)
{
$result = Engineering::CONVERTUOM(...$args);
- self::assertEquals($expectedResult, $result, null);
+ self::assertEquals($expectedResult, $result, '');
}
public function providerCONVERTUOM()
diff --git a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/DateTest.php b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/DateTest.php
index 08587336..6628322a 100644
--- a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/DateTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/DateTest.php
@@ -49,7 +49,7 @@ class DateTest extends TestCase
$result = DateTime::DATE(2012, 1, 31);
// Must return an object...
- $this->assertInternalType('object', $result);
+ self::assertIsObject($result);
// ... of the correct type
$this->assertTrue(is_a($result, 'DateTimeInterface'));
// ... with the correct value
diff --git a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/DateValueTest.php b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/DateValueTest.php
index 937fc10a..2c4e96eb 100644
--- a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/DateValueTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/DateValueTest.php
@@ -2,6 +2,7 @@
namespace PhpOffice\PhpSpreadsheetTests\Calculation\Functions\DateTime;
+use DateTimeInterface;
use PhpOffice\PhpSpreadsheet\Calculation\DateTime;
use PhpOffice\PhpSpreadsheet\Calculation\Functions;
use PhpOffice\PhpSpreadsheet\Shared\Date;
@@ -47,9 +48,9 @@ class DateValueTest extends TestCase
$result = DateTime::DATEVALUE('2012-1-31');
// Must return an object...
- $this->assertInternalType('object', $result);
+ self::assertIsObject($result);
// ... of the correct type
- $this->assertTrue(is_a($result, 'DateTimeInterface'));
+ $this->assertTrue(is_a($result, DateTimeInterface::class));
// ... with the correct value
$this->assertEquals($result->format('d-M-Y'), '31-Jan-2012');
}
diff --git a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/EDateTest.php b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/EDateTest.php
index 74c4a388..7f885096 100644
--- a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/EDateTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/EDateTest.php
@@ -48,7 +48,7 @@ class EDateTest extends TestCase
$result = DateTime::EDATE('2012-1-26', -1);
// Must return an object...
- $this->assertInternalType('object', $result);
+ self::assertIsObject($result);
// ... of the correct type
$this->assertTrue(is_a($result, 'DateTimeInterface'));
// ... with the correct value
diff --git a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/EoMonthTest.php b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/EoMonthTest.php
index edb9d7ed..6092151a 100644
--- a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/EoMonthTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/EoMonthTest.php
@@ -48,7 +48,7 @@ class EoMonthTest extends TestCase
$result = DateTime::EOMONTH('2012-1-26', -1);
// Must return an object...
- $this->assertInternalType('object', $result);
+ self::assertIsObject($result);
// ... of the correct type
$this->assertTrue(is_a($result, 'DateTimeInterface'));
// ... with the correct value
diff --git a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/TimeTest.php b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/TimeTest.php
index 5a0f3b00..61406f5a 100644
--- a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/TimeTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/TimeTest.php
@@ -46,7 +46,7 @@ class TimeTest extends TestCase
$result = DateTime::TIME(7, 30, 20);
// Must return an object...
- $this->assertInternalType('object', $result);
+ self::assertIsObject($result);
// ... of the correct type
$this->assertTrue(is_a($result, 'DateTimeInterface'));
// ... with the correct value
diff --git a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/TimeValueTest.php b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/TimeValueTest.php
index 6a45f6a3..4fc09a2d 100644
--- a/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/TimeValueTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/Functions/DateTime/TimeValueTest.php
@@ -46,7 +46,7 @@ class TimeValueTest extends TestCase
$result = DateTime::TIMEVALUE('7:30:20');
// Must return an object...
- $this->assertInternalType('object', $result);
+ self::assertIsObject($result);
// ... of the correct type
$this->assertTrue(is_a($result, 'DateTimeInterface'));
// ... with the correct value
diff --git a/tests/PhpSpreadsheetTests/Calculation/FunctionsTest.php b/tests/PhpSpreadsheetTests/Calculation/FunctionsTest.php
index df2028c0..2e8e7e9d 100644
--- a/tests/PhpSpreadsheetTests/Calculation/FunctionsTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/FunctionsTest.php
@@ -114,7 +114,7 @@ class FunctionsTest extends TestCase
public function testIsBlank($expectedResult, ...$args)
{
$result = Functions::isBlank(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsBlank()
@@ -130,7 +130,7 @@ class FunctionsTest extends TestCase
public function testIsErr($expectedResult, ...$args)
{
$result = Functions::isErr(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsErr()
@@ -146,7 +146,7 @@ class FunctionsTest extends TestCase
public function testIsError($expectedResult, ...$args)
{
$result = Functions::isError(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsError()
@@ -162,7 +162,7 @@ class FunctionsTest extends TestCase
public function testErrorType($expectedResult, ...$args)
{
$result = Functions::errorType(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerErrorType()
@@ -178,7 +178,7 @@ class FunctionsTest extends TestCase
public function testIsLogical($expectedResult, ...$args)
{
$result = Functions::isLogical(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsLogical()
@@ -194,7 +194,7 @@ class FunctionsTest extends TestCase
public function testIsNa($expectedResult, ...$args)
{
$result = Functions::isNa(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsNa()
@@ -210,7 +210,7 @@ class FunctionsTest extends TestCase
public function testIsNumber($expectedResult, ...$args)
{
$result = Functions::isNumber(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsNumber()
@@ -226,7 +226,7 @@ class FunctionsTest extends TestCase
public function testIsText($expectedResult, ...$args)
{
$result = Functions::isText(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsText()
@@ -242,7 +242,7 @@ class FunctionsTest extends TestCase
public function testIsNonText($expectedResult, ...$args)
{
$result = Functions::isNonText(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsNonText()
@@ -258,7 +258,7 @@ class FunctionsTest extends TestCase
public function testIsEven($expectedResult, ...$args)
{
$result = Functions::isEven(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsEven()
@@ -274,7 +274,7 @@ class FunctionsTest extends TestCase
public function testIsOdd($expectedResult, ...$args)
{
$result = Functions::isOdd(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsOdd()
@@ -290,7 +290,7 @@ class FunctionsTest extends TestCase
public function testTYPE($expectedResult, ...$args)
{
$result = Functions::TYPE(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerTYPE()
@@ -306,7 +306,7 @@ class FunctionsTest extends TestCase
public function testN($expectedResult, ...$args)
{
$result = Functions::n(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerN()
@@ -359,7 +359,7 @@ class FunctionsTest extends TestCase
}
$result = Functions::isFormula($reference, $ourCell);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerIsFormula()
diff --git a/tests/PhpSpreadsheetTests/Calculation/LookupRefTest.php b/tests/PhpSpreadsheetTests/Calculation/LookupRefTest.php
index acf709be..f7f035e7 100644
--- a/tests/PhpSpreadsheetTests/Calculation/LookupRefTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/LookupRefTest.php
@@ -178,7 +178,7 @@ class LookupRefTest extends TestCase
}
$result = LookupRef::FORMULATEXT($reference, $ourCell);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerFormulaText()
diff --git a/tests/PhpSpreadsheetTests/Calculation/TextDataTest.php b/tests/PhpSpreadsheetTests/Calculation/TextDataTest.php
index b625727d..32d7605f 100644
--- a/tests/PhpSpreadsheetTests/Calculation/TextDataTest.php
+++ b/tests/PhpSpreadsheetTests/Calculation/TextDataTest.php
@@ -362,7 +362,7 @@ class TextDataTest extends TestCase
StringHelper::setCurrencyCode('$');
$result = TextData::VALUE(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-8);
+ self::assertEquals($expectedResult, $result, '', 1E-8);
}
public function providerVALUE()
@@ -383,7 +383,7 @@ class TextDataTest extends TestCase
StringHelper::setCurrencyCode('$');
$result = TextData::EXACT(...$args);
- self::assertSame($expectedResult, $result, null);
+ self::assertSame($expectedResult, $result);
}
/**
diff --git a/tests/PhpSpreadsheetTests/Cell/CoordinateTest.php b/tests/PhpSpreadsheetTests/Cell/CoordinateTest.php
index 5136226d..8d041c26 100644
--- a/tests/PhpSpreadsheetTests/Cell/CoordinateTest.php
+++ b/tests/PhpSpreadsheetTests/Cell/CoordinateTest.php
@@ -243,10 +243,6 @@ class CoordinateTest extends TestCase
{
$this->expectException(\TypeError::class);
- if (PHP_MAJOR_VERSION < 7) {
- $this->markTestSkipped('Cannot catch type hinting error with PHP 5.6');
- }
-
$cellRange = '';
Coordinate::buildRange($cellRange);
}
diff --git a/tests/PhpSpreadsheetTests/Cell/DataTypeTest.php b/tests/PhpSpreadsheetTests/Cell/DataTypeTest.php
index c450e6e1..1e1b5ecc 100644
--- a/tests/PhpSpreadsheetTests/Cell/DataTypeTest.php
+++ b/tests/PhpSpreadsheetTests/Cell/DataTypeTest.php
@@ -10,7 +10,7 @@ class DataTypeTest extends TestCase
public function testGetErrorCodes()
{
$result = DataType::getErrorCodes();
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
self::assertGreaterThan(0, count($result));
self::assertArrayHasKey('#NULL!', $result);
}
diff --git a/tests/PhpSpreadsheetTests/Helper/SampleTest.php b/tests/PhpSpreadsheetTests/Helper/SampleTest.php
index a56d7813..121ec148 100644
--- a/tests/PhpSpreadsheetTests/Helper/SampleTest.php
+++ b/tests/PhpSpreadsheetTests/Helper/SampleTest.php
@@ -21,6 +21,8 @@ class SampleTest extends TestCase
});
require $sample;
+
+ self::assertTrue(true);
}
public function providerSample()
diff --git a/tests/PhpSpreadsheetTests/Reader/OdsTest.php b/tests/PhpSpreadsheetTests/Reader/OdsTest.php
index 59ae006b..bec85f7b 100644
--- a/tests/PhpSpreadsheetTests/Reader/OdsTest.php
+++ b/tests/PhpSpreadsheetTests/Reader/OdsTest.php
@@ -240,28 +240,28 @@ class OdsTest extends TestCase
$properties = $spreadsheet->getProperties();
// Core Properties
-// $this->assertSame('Mark Baker', $properties->getCreator());
- $this->assertSame('Property Test File', $properties->getTitle());
- $this->assertSame('Testing for Properties', $properties->getSubject());
- $this->assertSame('TEST ODS PHPSpreadsheet', $properties->getKeywords());
+// self::assertSame('Mark Baker', $properties->getCreator());
+ self::assertSame('Property Test File', $properties->getTitle());
+ self::assertSame('Testing for Properties', $properties->getSubject());
+ self::assertSame('TEST ODS PHPSpreadsheet', $properties->getKeywords());
// Extended Properties
-// $this->assertSame('PHPOffice', $properties->getCompany());
-// $this->assertSame('The Big Boss', $properties->getManager());
+// self::assertSame('PHPOffice', $properties->getCompany());
+// self::assertSame('The Big Boss', $properties->getManager());
// Custom Properties
$customProperties = $properties->getCustomProperties();
- $this->assertInternalType('array', $customProperties);
+ self::assertIsArray($customProperties);
$customProperties = array_flip($customProperties);
- $this->assertArrayHasKey('TestDate', $customProperties);
+ self::assertArrayHasKey('TestDate', $customProperties);
foreach ($customPropertySet as $propertyName => $testData) {
- $this->assertTrue($properties->isCustomPropertySet($propertyName));
- $this->assertSame($testData['type'], $properties->getCustomPropertyType($propertyName));
+ self::assertTrue($properties->isCustomPropertySet($propertyName));
+ self::assertSame($testData['type'], $properties->getCustomPropertyType($propertyName));
if ($properties->getCustomPropertyType($propertyName) == Properties::PROPERTY_TYPE_DATE) {
- $this->assertSame($testData['value'], date('Y-m-d', $properties->getCustomPropertyValue($propertyName)));
+ self::assertSame($testData['value'], date('Y-m-d', $properties->getCustomPropertyValue($propertyName)));
} else {
- $this->assertSame($testData['value'], $properties->getCustomPropertyValue($propertyName));
+ self::assertSame($testData['value'], $properties->getCustomPropertyValue($propertyName));
}
}
}
diff --git a/tests/PhpSpreadsheetTests/Reader/Security/XmlScannerTest.php b/tests/PhpSpreadsheetTests/Reader/Security/XmlScannerTest.php
index c1d7fa38..0d9fc13f 100644
--- a/tests/PhpSpreadsheetTests/Reader/Security/XmlScannerTest.php
+++ b/tests/PhpSpreadsheetTests/Reader/Security/XmlScannerTest.php
@@ -82,7 +82,7 @@ class XmlScannerTest extends TestCase
$scanner = $fileReader->getSecurityScanner();
// Must return an object...
- $this->assertInternalType('object', $scanner);
+ self::assertIsObject($scanner);
// ... of the correct type
$this->assertInstanceOf(XmlScanner::class, $scanner);
}
diff --git a/tests/PhpSpreadsheetTests/Reader/XlsxTest.php b/tests/PhpSpreadsheetTests/Reader/XlsxTest.php
index 5cf6f93f..1180aacc 100644
--- a/tests/PhpSpreadsheetTests/Reader/XlsxTest.php
+++ b/tests/PhpSpreadsheetTests/Reader/XlsxTest.php
@@ -40,7 +40,7 @@ class XlsxTest extends TestCase
// Custom Properties
$customProperties = $properties->getCustomProperties();
- $this->assertInternalType('array', $customProperties);
+ self::assertIsArray($customProperties);
$customProperties = array_flip($customProperties);
$this->assertArrayHasKey('Publisher', $customProperties);
diff --git a/tests/PhpSpreadsheetTests/Shared/DateTest.php b/tests/PhpSpreadsheetTests/Shared/DateTest.php
index 4a5479ef..5de34702 100644
--- a/tests/PhpSpreadsheetTests/Shared/DateTest.php
+++ b/tests/PhpSpreadsheetTests/Shared/DateTest.php
@@ -55,7 +55,7 @@ class DateTest extends TestCase
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
$result = Date::timestampToExcel(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-5);
+ self::assertEquals($expectedResult, $result, '', 1E-5);
}
public function providerDateTimeTimestampToExcel1900()
@@ -73,7 +73,7 @@ class DateTest extends TestCase
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
$result = Date::dateTimeToExcel(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-5);
+ self::assertEquals($expectedResult, $result, '', 1E-5);
}
public function providerDateTimeDateTimeToExcel()
@@ -91,7 +91,7 @@ class DateTest extends TestCase
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
$result = Date::formattedPHPToExcel(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-5);
+ self::assertEquals($expectedResult, $result, '', 1E-5);
}
public function providerDateTimeFormattedPHPToExcel1900()
@@ -127,7 +127,7 @@ class DateTest extends TestCase
Date::setExcelCalendar(Date::CALENDAR_MAC_1904);
$result = Date::timestampToExcel(...$args);
- self::assertEquals($expectedResult, $result, null, 1E-5);
+ self::assertEquals($expectedResult, $result, '', 1E-5);
}
public function providerDateTimeTimestampToExcel1904()
diff --git a/tests/PhpSpreadsheetTests/Worksheet/AutoFilter/ColumnTest.php b/tests/PhpSpreadsheetTests/Worksheet/AutoFilter/ColumnTest.php
index 9ce636d8..855de2bc 100644
--- a/tests/PhpSpreadsheetTests/Worksheet/AutoFilter/ColumnTest.php
+++ b/tests/PhpSpreadsheetTests/Worksheet/AutoFilter/ColumnTest.php
@@ -127,7 +127,7 @@ class ColumnTest extends TestCase
$this->testAutoFilterColumnObject->setAttributes($attributeSet);
$result = $this->testAutoFilterColumnObject->getAttributes();
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
self::assertCount(count($attributeSet), $result);
}
diff --git a/tests/PhpSpreadsheetTests/Worksheet/AutoFilterTest.php b/tests/PhpSpreadsheetTests/Worksheet/AutoFilterTest.php
index 6766aac8..aa66eb8e 100644
--- a/tests/PhpSpreadsheetTests/Worksheet/AutoFilterTest.php
+++ b/tests/PhpSpreadsheetTests/Worksheet/AutoFilterTest.php
@@ -111,7 +111,7 @@ class AutoFilterTest extends TestCase
{
// There should be no columns yet defined
$result = $this->testAutoFilterObject->getColumns();
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
self::assertCount(0, $result);
}
@@ -151,7 +151,7 @@ class AutoFilterTest extends TestCase
$result = $this->testAutoFilterObject->getColumns();
// Result should be an array of \PhpOffice\PhpSpreadsheet\Worksheet\Worksheet\AutoFilter\Column
// objects for each column we set indexed by the column ID
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
self::assertCount(1, $result);
self::assertArrayHasKey($expectedResult, $result);
self::assertInstanceOf(Column::class, $result[$expectedResult]);
@@ -178,7 +178,7 @@ class AutoFilterTest extends TestCase
$result = $this->testAutoFilterObject->getColumns();
// Result should be an array of \PhpOffice\PhpSpreadsheet\Worksheet\Worksheet\AutoFilter\Column
// objects for each column we set indexed by the column ID
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
self::assertCount(1, $result);
self::assertArrayHasKey($expectedResult, $result);
self::assertInstanceOf(Column::class, $result[$expectedResult]);
@@ -211,7 +211,7 @@ class AutoFilterTest extends TestCase
$result = $this->testAutoFilterObject->getColumns();
// Result should be an array of \PhpOffice\PhpSpreadsheet\Worksheet\Worksheet\AutoFilter\Column
// objects for each column we set indexed by the column ID
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
self::assertCount(count($columnIndexes), $result);
foreach ($columnIndexes as $columnIndex) {
self::assertArrayHasKey($columnIndex, $result);
@@ -288,7 +288,7 @@ class AutoFilterTest extends TestCase
// Column array should be cleared
$result = $this->testAutoFilterObject->getColumns();
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
self::assertCount(0, $result);
}
@@ -318,7 +318,7 @@ class AutoFilterTest extends TestCase
// Only columns that existed in the original range and that
// still fall within the new range should be retained
$result = $this->testAutoFilterObject->getColumns();
- self::assertInternalType('array', $result);
+ self::assertIsArray($result);
self::assertCount(count($columnIndexes1), $result);
}
diff --git a/tests/PhpSpreadsheetTests/Worksheet/WorksheetTest.php b/tests/PhpSpreadsheetTests/Worksheet/WorksheetTest.php
index 46df9405..ce2df837 100644
--- a/tests/PhpSpreadsheetTests/Worksheet/WorksheetTest.php
+++ b/tests/PhpSpreadsheetTests/Worksheet/WorksheetTest.php
@@ -137,6 +137,7 @@ class WorksheetTest extends TestCase
['B2', '', '', 'B2'],
['testTitle!B2', 'testTitle', 'B2', 'B2'],
['test!Title!B2', 'test!Title', 'B2', 'B2'],
+ ['test Title!B2', 'test Title', 'B2', 'B2'],
];
}
diff --git a/tests/data/Calculation/Functions/ISFORMULA.php b/tests/data/Calculation/Functions/ISFORMULA.php
index 9e0d0d0b..60d9c07f 100644
--- a/tests/data/Calculation/Functions/ISFORMULA.php
+++ b/tests/data/Calculation/Functions/ISFORMULA.php
@@ -81,4 +81,14 @@ return [
'\'Worksheet1\'!A16',
'123',
],
+ [
+ true,
+ 'A17',
+ '=\'Work sheet1\'!A1',
+ ],
+ [
+ true,
+ 'A18',
+ '=\'Work!sheet1\'!A1',
+ ],
];
diff --git a/tests/data/Calculation/LookupRef/FORMULATEXT.php b/tests/data/Calculation/LookupRef/FORMULATEXT.php
index 30b2d6eb..48d528bf 100644
--- a/tests/data/Calculation/LookupRef/FORMULATEXT.php
+++ b/tests/data/Calculation/LookupRef/FORMULATEXT.php
@@ -21,11 +21,26 @@ return [
'A4',
'=\'Worksheet1\'!A1',
],
+ [
+ '=\'Works heet1\'!A1',
+ 'A4',
+ '=\'Works heet1\'!A1',
+ ],
[
'="HELLO WORLD"',
'\'Worksheet1\'!A5',
'="HELLO WORLD"',
],
+ [
+ '="HELLO WORLD"',
+ '\'Work sheet1\'!A5',
+ '="HELLO WORLD"',
+ ],
+ [
+ '="HELLO WORLD"',
+ '\'Work!sheet1\'!A5',
+ '="HELLO WORLD"',
+ ],
[
'#N/A',
'\'Worksheet1\'!A6',
diff --git a/tests/data/Calculation/TextData/TEXT.php b/tests/data/Calculation/TextData/TEXT.php
index e92f4a2e..fcb05191 100644
--- a/tests/data/Calculation/TextData/TEXT.php
+++ b/tests/data/Calculation/TextData/TEXT.php
@@ -37,17 +37,17 @@ return [
'#,##0.00',
],
[
- '1.23E05',
+ '1.23E+5',
123456.789,
'0.00E+00',
],
[
- '-1.23E05',
+ '-1.23E+5',
-123456.789,
'0.00E+00',
],
[
- '1.23E-05',
+ '1.23E-5',
1.2345E-5,
'0.00E+00',
],
diff --git a/tests/data/Style/NumberFormat.php b/tests/data/Style/NumberFormat.php
index 4c3b2f14..b7c39b3a 100644
--- a/tests/data/Style/NumberFormat.php
+++ b/tests/data/Style/NumberFormat.php
@@ -29,7 +29,7 @@ return [
'##0',
],
[
- '12.0',
+ '12.00',
12,
'#.0#',
],
@@ -263,12 +263,12 @@ return [
[
'-70',
-70,
- '#,##0;[Red]-#,##0'
+ '#,##0;[Red]-#,##0',
],
[
'-12,345',
-12345,
- '#,##0;[Red]-#,##0'
+ '#,##0;[Red]-#,##0',
],
// Multiple colors
[