Я генерирую CSV-файл в php. Мне нужно напечатать текст в новой строке внутри ячейки (я могу сделать это в excel, используя Ctrl + Enter или Alt + Enter ). Для этого я попытался использовать '\n'
, '\r'
, но ничего не помогло. Как я могу это достичь?
Я использую расширение yii ECSVExport для генерации csv.
Мне нужен вывод следующим образом:
ID Value 1 A B 2 C 3 E FF G 4 X
Попробуй это
"\n"
внутри двойная цитата
Используйте "\n"
внутри значения ячейки (wrapped in) и "\r\n"
для вашего маркера конца записи. Если ваша запись ячейки включает несколько строк, вы должны заключить ее в "
$fh = fopen('test1.csv', 'w+'); fwrite($fh, "sep=\t" . "\r\n"); fwrite($fh, 'A' ."\t" . 'B' . "\t" . 'C' . "\r\n"); fwrite($fh, 'D' ."\t" . "\"E\nF\nG\"" . "\t" . 'H' . "\r\n"); fclose($fh);
или (работа с переменными)
$varA = 'A'; $varB = 'B'; $varC = 'C'; $varD = 'D'; $varE = 'E'; $varF = 'F'; $varG = 'G'; $varH = 'H'; $fh = fopen('test2.csv', 'w+'); fwrite($fh, "sep=\t"."\r\n"); fwrite($fh, $varA . "\t" . $varB . "\t" . $varC . "\r\n"); fwrite($fh, $varD . "\t" . "\"$varE\n$varF\n$varG\"" . "\t" . $varH . "\r\n"); fclose($fh);
или (используя fputcsv()
)
$fh = fopen('test3.csv', 'w+'); fwrite($fh, "sep=\t" . "\r\n"); fputcsv($fh, array('A', 'B', 'C'), "\t"); fputcsv($fh, array('D', "E\nF\nG", 'H'), "\t"); fclose($fh);
или (используя fputcsv()
и работая с переменными)
$varA = 'A'; $varB = 'B'; $varC = 'C'; $varD = 'D'; $varE = 'E'; $varF = 'F'; $varG = 'G'; $varH = 'H'; $fh = fopen('test4.csv', 'w+'); fwrite($fh, "sep=\t" . "\r\n"); fputcsv($fh, array($varA, $varB, $varC), "\t"); fputcsv($fh, array($varD, "$varE\n$varF\n$varG", $varH), "\t"); fclose($fh);