diff options
-rw-r--r-- | src/Config/Output.php | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/Config/Output.php b/src/Config/Output.php index 047f402..306d3e4 100644 --- a/src/Config/Output.php +++ b/src/Config/Output.php @@ -222,18 +222,19 @@ trait Output */ protected function convertToUtf8(Iterator $iterator) { - if (strpos($this->encodingFrom, 'UTF-8') !== false) { + if (stripos($this->encodingFrom, 'UTF-8') !== false) { return $iterator; } - return new MapIterator($iterator, function ($row) { - foreach ($row as &$value) { - $value = mb_convert_encoding($value, 'UTF-8', $this->encodingFrom); - } - unset($value); + $convertCell = function ($value) { + return mb_convert_encoding($value, 'UTF-8', $this->encodingFrom); + }; - return $row; - }); + $convertRow = function (array $row) use ($convertCell) { + return array_map($convertCell, $row); + }; + + return new MapIterator($iterator, $convertRow); } /** |