Добавление символа новой строки внутри ячейки (CSV)

Я хотел бы импортировать описания продуктов, которые должны быть логически повреждены в соответствии с такими вещами, как описание, размеры, завершение и т.д. Как я могу вставить разрыв строки, чтобы при импорте файла они отображались?

Ответ 1

На этот вопрос был дан ответ на Можете ли вы закодировать CR/LF в CSV файлы?.

Рассмотрим также обратное проектирование нескольких строк в Excel. Чтобы вставить новую строку в ячейку Excel, нажмите Alt + Enter. Затем сохраните файл как .csv. Вы увидите, что двойные кавычки начинаются в одной строке, и каждая новая строка в файле считается встроенной новой строкой в ​​ячейке.

Ответ 2

Я тоже боролся с этим, но это решение. Если вы добавите " до и в конце строки csv, которую вы пытаетесь отобразить, она будет консолидировать их в 1 ячейку, соблюдая новую строку.

csvString += "\""+"Date Generated: \n" ; 
csvString += "Doctor: " + "\n"+"\"" + "\n"; 

Ответ 3

Я конкатенировал переменную и добавлял несколько элементов в одну строку. поэтому ниже код работает для меня. "\n" новый код строки является обязательным для добавления первой и последней строки каждой строки, если вы добавите ее последним, только добавит последний символ 1-2 в новые строки.

  $itemCode =  '';
foreach($returnData['repairdetail'] as $checkkey=>$repairDetailData){

    if($checkkey >0){
        $itemCode   .= "\n".trim(@$repairDetailData['ItemMaster']->Item_Code)."\n";
    }else{
        $itemCode   .= "\n".trim(@$repairDetailData['ItemMaster']->Item_Code)."\n";             
    }
    $repairDetaile[]= array(
        $itemCode,
    )
}
// pass all array to here 
foreach ($repairDetaile as $csvData) { 
    fputcsv($csv_file,$csvData,',','"');
}
fclose($csv_file);