简体   繁体   English

使用php编写时将空白行插入到csv文件中?

[英]Insert a blank row into a csv file when writing using php?

I am writing a csv file using "fputcsv" in codeignitor. 我在codeignitor中使用“ fputcsv”编写了一个csv文件。 I have got two tables in array form and they do get written in the csv file. 我有两个表格形式的表,它们确实写在csv文件中。

Now I want to insert some blank rows in the csv file as a separator between two tables. 现在,我想在csv文件中插入一些空白行,作为两个表之间的分隔符。

$this->load->helper('download');

$blanks = array("\t","\t","\t","\t");

$fp = fopen('php://output', 'w');
foreach ($writedata as $fields) { //table one
fputcsv($fp, $fields);
}

for($i=0;$i<5;$i++)
{
foreach ($blanks as $fields) { //blank space insertion try
fputcsv($fp, $fields);
}
}

foreach ($table2 as $fields) { //table two
fputcsv($fp, $fields);
}
$data = file_get_contents('php://output');
$name = 'data.csv';

Tried different version of blank and tried inserting it but didn't work. 尝试了其他版本的Blank,并尝试将其插入,但没有用。

Language - PHP Framework - Codeignitor 语言-PHP框架-Codeignitor

Try it: 试试吧:

<?php

$this->load->helper('download');

$fp = fopen('php://output', 'w');
foreach ($writedata as $fields) { //table one
    fputcsv($fp, $fields);
}

for($i=0;$i<5;$i++) {
    fput($fp, PHP_EOL);
}

foreach ($table2 as $fields) { //table two
    fputcsv($fp, $fields);
}
$data = file_get_contents('php://output');
$name = 'data.csv';

or 要么

$this->load->helper('download');

$blanks = array("\t","\t","\t","\t");

$fp = fopen('php://output', 'w');
foreach ($writedata as $fields) { //table one
    fputcsv($fp, $fields);
}

for($i=0;$i<5;$i++) {
    fputcsv($fp, $blanks);
}

foreach ($table2 as $fields) { //table two
    fputcsv($fp, $fields);
}
$data = file_get_contents('php://output');
$name = 'data.csv';

This worked. 这工作了。 Please excuse the indentation. 请原谅缩进。 With this I can always customize how i want the blank lines. 有了这个,我总是可以自定义我想要空白行的方式。

$this->load->helper('download');

$blanks = array();
for($i=0;$i<5;$i++)
    {
    array_push($blanks,array("\t","\t","\t","\t");
    }

$fp = fopen('php://output', 'w');
foreach ($writedata as $fields) {
   fputcsv($fp, $fields);
}

foreach ($blanks as $fields) {
    fputcsv($fp, $fields);
}

foreach ($table2 as $fields) {
    fputcsv($fp, $fields);
}
$data = file_get_contents('php://output');
$name = 'data.csv';

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM