[英]Export CSV file have many empty rows
我正在使用CakePHP 1.3和MSSQL Server 2012開發該應用程序。我已成功從數據庫中導出了CSV文件。
第一次,我讓它沒有問題。 我繼續在我的應用程序中執行其他一些功能。 而且比我嘗試再次測試導出功能。
和問題發生了。 問題出在我的CSV文件中,它出現了很多空行。 我檢查了數據庫,它沒有空值,也檢查了我的控制器和export.ctp。
我不知道為什么會發生此問題,所以有人可以意識到我的錯誤嗎?
我的控制器:
function csv_export() {
$this->set('title_for_layout','Export Words List');
Configure::write('debug',0);
$this->layout=false;
$filename = 'Wordlist_'.date('YmdHis');
$th=array('id','avoidance_word','avoidance_word_yomi','replace_word','replace_word_yomi','creator','create_time','updator','update_time','invalid_flg');
$Th_name=array('ID','Avoidance Words','Avoidance Words Yomi','Replace Word','Replace Word Yomi','Creator','Create Time','Updator','Update Time','Invalid Flag');
$td=$this->MAvoidanceWord->find('all', array('fields'=>$th));
$this->set(compact('filename','Th_name','td'));
}
我的觀點:
<?php
$csv->addRow($Th_name);
foreach ($td as $t){
$csv->addRow();
$csv->addField($t['MAvoidanceWord']['id']);
$csv->addField($t['MAvoidanceWord']['avoidance_word']);
$csv->addField($t['MAvoidanceWord']['avoidance_word_yomi']);
$csv->addField($t['MAvoidanceWord']['replace_word']);
$csv->addField($t['MAvoidanceWord']['replace_word_yomi']);
$csv->addField($t['MAvoidanceWord']['creator']);
$csv->addField($t['MAvoidanceWord']['create_time']);
$csv->addField($t['MAvoidanceWord']['updator']);
$csv->addField($t['MAvoidanceWord']['update_time']);
$csv->addField($t['MAvoidanceWord']['invalid_flg']);
$csv->endRow();}
$csv->setFilename($filename);
echo $csv->render(true,'UTF-8');
?>
還有我的CSV文件:
更新:我的CSV文件使用記事本++打開
從foreach內部刪除addRow
:
foreach ($td as $t){
// $csv->addRow();
$csv->addField($t['MAvoidanceWord']['id']);
...
您可以使用addRow(array)
或addField
(幾次)和endRow現在The fact that you have
addRow` The fact that you have
意味着它多次添加了一個空白行。
第二種方式 :嘗試添加ob_clean();
在$csv->addRow($Th_name);
可能不是此代碼中的問題。
檢查兩次,確認沒有任何換行符在任何地方回顯。
可能是這樣的:
<?php
//php code
?>
↓
↓
↓
<?php ?>
塊之外的所有內容都是無聲的,相當於echo“ ...”;
因此,這些換行符的打印方式類似於echo“ \\ n \\ n \\ n \\ n”;
好的做法是刪除最后一個?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.