fixed TableHelper when cell value has new line
This commit is contained in:
parent
f056ac1c22
commit
40e58cdc9a
@ -142,6 +142,29 @@ class TableHelper extends Helper
|
||||
public function addRow(array $row)
|
||||
{
|
||||
$this->rows[] = array_values($row);
|
||||
|
||||
$keys = array_keys($this->rows);
|
||||
$rowKey = array_pop($keys);
|
||||
|
||||
foreach ($row as $key => $cellValue) {
|
||||
if (strstr($cellValue, "\n")) {
|
||||
|
||||
$lines = explode("\n", $cellValue);
|
||||
$this->rows[$rowKey][$key] = $lines[0];
|
||||
unset($lines[0]);
|
||||
|
||||
foreach ($lines as $lineKey => $line) {
|
||||
|
||||
$nextRowKey = $rowKey + $lineKey + 1;
|
||||
|
||||
if (isset($this->rows[$nextRowKey])) {
|
||||
$this->rows[$nextRowKey][$key] = $line;
|
||||
} else {
|
||||
$this->rows[$nextRowKey] = array($key => $line);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
@ -152,6 +152,28 @@ TABLE
|
||||
| 80-902734-1-6 | And Then There Were None | Agatha Christie |
|
||||
+---------------+--------------------------+------------------+
|
||||
|
||||
TABLE
|
||||
),
|
||||
array(
|
||||
array('ISBN', 'Title', 'Author'),
|
||||
array(
|
||||
array("99921-58-10-7", "Divine\nComedy", "Dante Alighieri"),
|
||||
array("9971-5-0210-2", "Harry Potter\nand the Chamber of Secrets", "Rowling\nJoanne K."),
|
||||
array("960-425-059-0", "The Lord of the Rings", "J. R. R.\nTolkien"),
|
||||
),
|
||||
TableHelper::LAYOUT_DEFAULT,
|
||||
<<<TABLE
|
||||
+---------------+----------------------------+-----------------+
|
||||
| ISBN | Title | Author |
|
||||
+---------------+----------------------------+-----------------+
|
||||
| 99921-58-10-7 | Divine | Dante Alighieri |
|
||||
| | Comedy | |
|
||||
| 9971-5-0210-2 | Harry Potter | Rowling |
|
||||
| | and the Chamber of Secrets | Joanne K. |
|
||||
| 960-425-059-0 | The Lord of the Rings | J. R. R. |
|
||||
| | | Tolkien |
|
||||
+---------------+----------------------------+-----------------+
|
||||
|
||||
TABLE
|
||||
),
|
||||
array(
|
||||
|
Reference in New Issue
Block a user