0
我正在將CSV文件導入到我的數據庫中。我想顯示列的前5行,以便了解文件內的內容。 所以下面我製作了一個快速腳本來打開文件。我計算列的數量,循環遍歷列數,爲每個列創建,然後在其下面引入一個while()循環來顯示行。當然,我循環的列數來匹配。PHP fgetcsv()顯示前5行
我成功地從文件中獲取數據,而我甚至得到列數正確。但它顯示的是文件中間某處的結果,而不是前5條記錄。
第一行幫助我知道的列叫什麼,(如果有列名)。
該腳本很髒,我很好奇它是如何優化的。
<?
$filerow = $numcols =0;
if(is_file($targetDirectoryFile)){
$file_opened = fopen($targetDirectoryFile, "r"); // open the file
?>
<table class="itemstable" style="width:100%;">
<?
$getfileInfo = fgetcsv($file_opened);
$numcols = count($getfileInfo); // count columns
?>
<tr>
<? for($cols = 0; $cols < $numcols; $cols++){ // loop thru # of columns ?>
<th>Column <?=$cols+1;?></th>
<? } ?>
</tr>
<?
// feels like this could be done better.
while ($getfileInfo2 = fgetcsv($file_opened)){
$filerow++;
?>
<tr>
<? for($col = 0; $col < $numcols; $col++){ // loop thru # of columns ?>
<td><?=trim($getfileInfo2[$col]);?></td>
<? } ?>
</tr>
<?
if($filerow > 4){ break; fclose($file_opened); // stop and close after 5 loops }
}
echo '</table>';
//fclose($file_opened);
}
?>
我遇到的問題實際上是一個令人尷尬的問題。重複的記錄名稱,除了一個字符。我正在查看錯誤的文件。 Soooooo,我只是做一個三重檢查的心理筆記。 – coffeemonitor