diff --git a/README.md b/README.md
index 1690ced..1ef1f7d 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# SimpleXLSXGen class 0.9.12 (Official)
+# SimpleXLSXGen class 0.9.13 (Official)
[
](https://www.patreon.com/shuchkin) [
](https://github.com/shuchkin/simplexlsxgen/blob/master/license.md) [
](https://github.com/shuchkin/simplexlsxgen/stargazers) [
](https://github.com/shuchkin/simplexlsxgen/network) [
](https://github.com/shuchkin/simplexlsxgen/issues)
Export data to Excel XLSX file. PHP XLSX generator. No external tools and libraries.
@@ -49,6 +49,7 @@ SimpleXLSXGen::fromArray( $data )->saveAs('datatypes.xlsx');
![XLSX screenshot](datatypes.png)
## History
+v0.9.13 (2020-05-21) if string more 160 chars, save as inlineStr
v0.9.12 (2020-05-21) readme fixed
v0.9.11 (2020-05-21) removed XML unimportant attributes
v0.9.10 (2020-05-20) initial release
\ No newline at end of file
diff --git a/src/SimpleXLSXGen.php b/src/SimpleXLSXGen.php
index 105d7e8..3c65e4b 100644
--- a/src/SimpleXLSXGen.php
+++ b/src/SimpleXLSXGen.php
@@ -203,9 +203,12 @@ class SimpleXLSXGen {
} elseif ( preg_match('/^(\d\d):(\d\d):(\d\d)$/', $v, $m ) ){
$cv = $this->_date2excel(0,0,0,$m[1],$m[2],$m[3]);
$cs = 4; // [14] mm-dd-yy
- } elseif ( preg_match('/^(\d\d\d\d)-(\d\d)-(\d\d) (\d\d):(\d\d):(\d\d)$/', $v, $m ) ){
- $cv = $this->_date2excel($m[1],$m[2],$m[3],$m[4],$m[5],$m[6]);
+ } elseif ( preg_match('/^(\d\d\d\d)-(\d\d)-(\d\d) (\d\d):(\d\d):(\d\d)$/', $v, $m ) ) {
+ $cv = $this->_date2excel( $m[1], $m[2], $m[3], $m[4], $m[5], $m[6] );
$cs = 5; // [22] m/d/yy h:mm
+ } elseif ( mb_strlen( $v ) > 160 ) {
+ $ct = 'inlineStr';
+ $cv = htmlentities( $v, ENT_QUOTES );
} else {
$ct = 's'; // shared string
$v = htmlentities($v, ENT_QUOTES);
@@ -221,7 +224,8 @@ class SimpleXLSXGen {
continue;
}
- $row .= '' . $cv . "\r\n";
+ $row .= ''
+ .($ct === 'inlineStr' ? ''.$cv.'' : '' . $cv . '')."\r\n";
}
$ROWS[] = $row . "\r\n";
}