如何从PHP打印多个行到一个csv单元格?

时间:2014-04-03 08:46:24

标签: php csv export-to-csv

我从PHP代码中将记录导出为CSV,但我希望将多个记录放入同一列中,请参阅下面的

enter image description here

但是当使用下面的代码时,会给出以下结果

foreach($rows12 as $key => $value) {

    $row['_my_marks'] .= $value['marks']."\t\n";                    
} 

结果:

enter image description here

我用" \ t \ n"插入新行但它不会工作。所以,请你告诉我如何实现这一目标。

4 个答案:

答案 0 :(得分:0)

您的实施不起作用,因为这是一个CSV,您需要转到一个新行,添加两个空逗号(假设,是分隔符),然后是以下标记。

答案 1 :(得分:0)

可能这会起作用

"\n"

您可以点击printing a new line in a csv file cell

链接

答案 2 :(得分:0)

<?php
$classreport = array(
    array(
        'name' => 'Vick',
        'std' => 'A',
        'marks' => array(10, 20, 30, 40)
    ),
    array(
        'name' => 'Josh',
        'std' => 'B',
        'marks' => array(20, 40)
    ),
);

$csv = 'name, std, mark'."\r\n";
foreach($classreport as $student) {
    $markrows = 0;
    foreach ($student['marks'] as $marks) {
        if ($markrows == 0) {
            $csv .= sprintf('%s, %s, %d', $student['name'], $student['std'], $marks)."\r\n";
        } else {
            $csv .= sprintf(', , %d', $marks)."\r\n";
            $markrows++;
        }
    }
} 
?>

编辑:实际上,我刚刚意识到将这些东西添加到数组然后使用PHP的csv函数更容易。只需将其视为伪代码即可帮助您。

答案 3 :(得分:0)

如果您想在单个单元格中的多行中添加内容,则可以使用implode(PHP_EOL, $array)