Merge afc047221d3cfdad8c2c824ab08ee3f1efb81352 into 84596668410bea89d21aa9867b91e1550e359329
This commit is contained in:
commit
c0185a0c6e
@ -12,7 +12,7 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=7.3.0",
|
"php": ">=8.0",
|
||||||
"ext-zip": "*",
|
"ext-zip": "*",
|
||||||
"ext-xmlreader": "*",
|
"ext-xmlreader": "*",
|
||||||
"ext-dom": "*"
|
"ext-dom": "*"
|
||||||
|
@ -7,6 +7,7 @@ use Box\Spout\Common\Entity\Row;
|
|||||||
use Box\Spout\Common\Entity\Style\Style;
|
use Box\Spout\Common\Entity\Style\Style;
|
||||||
use Box\Spout\Common\Exception\UnsupportedTypeException;
|
use Box\Spout\Common\Exception\UnsupportedTypeException;
|
||||||
use Box\Spout\Common\Type;
|
use Box\Spout\Common\Type;
|
||||||
|
use Box\Spout\Writer\Common\Creator\Style\StyleBuilder;
|
||||||
use Box\Spout\Writer\WriterInterface;
|
use Box\Spout\Writer\WriterInterface;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -101,9 +102,17 @@ class WriterEntityFactory
|
|||||||
*/
|
*/
|
||||||
public static function createRowFromArray(array $cellValues = [], Style $rowStyle = null)
|
public static function createRowFromArray(array $cellValues = [], Style $rowStyle = null)
|
||||||
{
|
{
|
||||||
$cells = \array_map(function ($cellValue) {
|
$format = $rowStyle?->getFormat();
|
||||||
return new Cell($cellValue);
|
$cellStyles = [];
|
||||||
}, $cellValues);
|
|
||||||
|
if (is_array($format)) {
|
||||||
|
foreach ($format as $k => $f)
|
||||||
|
$cellStyles[$k] = (new StyleBuilder())->setFormat($f ?? '@')->build();
|
||||||
|
}
|
||||||
|
|
||||||
|
$cells = \array_map(function ($k, $cellValue) use ($cellStyles) {
|
||||||
|
return new Cell($cellValue, $cellStyles[$k] ?? null);
|
||||||
|
}, array_keys(array_values($cellValues)), $cellValues);
|
||||||
|
|
||||||
return new Row($cells, $rowStyle);
|
return new Row($cells, $rowStyle);
|
||||||
}
|
}
|
||||||
|
@ -141,7 +141,9 @@ class StyleRegistry extends \Box\Spout\Writer\Common\Manager\Style\StyleRegistry
|
|||||||
$styleId = $style->getId();
|
$styleId = $style->getId();
|
||||||
|
|
||||||
$format = $style->getFormat();
|
$format = $style->getFormat();
|
||||||
if ($format) {
|
|
||||||
|
// If format is passed as array then skip it from add it to rowstyles
|
||||||
|
if (!is_array($format)) {
|
||||||
$isFormatRegistered = isset($this->registeredFormats[$format]);
|
$isFormatRegistered = isset($this->registeredFormats[$format]);
|
||||||
|
|
||||||
// We need to track the already registered format definitions
|
// We need to track the already registered format definitions
|
||||||
|
Loading…
x
Reference in New Issue
Block a user