PhpExcel новая линия в клетке

Что я делаю:

  1. запросить данные из БД
  2. разбить данные и вставить \ n
  3. подготовить массив
  4. открытый тампон
  5. вставить массив в шаблон
  6. попробуйте заменить \ n новой строкой

Как я могу найти \ n и вставить новую строку? Например у меня в А1 следующий текст «One \ nTwo». Я читаю текст из А1

$ltr='A1';
$vle=$spreadsheet->getActiveSheet()->getCell($ltr);

После этого я пытаюсь снова вставить текст в A1 в A1 и заменить \ n новой строкой в ​​одной ячейке.

$spreadsheet->getActiveSheet()->getCell($ltr)->setValue("${vle}");
$spreadsheet->getActiveSheet()->getStyle($ltr)->getAlignment()->setWrapText(true);

Но это не работает для меня.

Например:
введите описание изображения здесь

Поэтому, если я открою тамплату с текстом, я не смогу заменить \ n в ячейках. Что я могу сделать?

Upd. Я пытаюсь использовать char (10) и вставить формулу (например) ="hello"&char(10)&"world" Но вставлено только ="hello"&char(10)

0

Решение

Если вы спрашиваете о эта проблема в журнале проблем с PHP тогда это проблема с вашим пониманием строк PHP.

$dataArray = [
['2010', 'Q1', 'United\nStates', 790],
['2010', 'Q2', 'United States', 730],
['2010', 'Q3', 'United States', 860]
]

'\n' в одинарных кавычках трактуется как буквальный \n; "\n" в двойных кавычках рассматривается как символ новой строки. Так что либо создайте свой массив, используя двойные кавычки:

$dataArray = [
['2010', 'Q1', "United\nStates", 790],
['2010', 'Q2', "United States", 730],
['2010', 'Q3', "United States", 860]
]

или преобразовать буквальное \n на новую строку, используя str_replace:

$modified = str_replace('\n', "\n", $original);
2

Другие решения

Использование «char (10)» в формуле Excel. & = concantinate и char (10) = \ n

$textWithNewLine = '="hello"&char(10)&"world"';
$spreadsheet->getActiveSheet()->getCell($ltr)->setValue($textWithNewLine);
0

Когда я взрываю / взрываю str и вставляю \ n, я использую ». Нужно использовать «»

implode("\n", $array);
0
По вопросам рекламы [email protected]