簡體   English   中英

格式化查詢的csv輸出

[英]Formatting csv output of query

我設法將查詢結果導出到可下載的 csv,但是我可以格式化這個 csv 輸出嗎? 例如具有不同的字體大小、列寬。 或者我可以把它變成xls文件嗎? 還需要幫助格式化它。

$connect = pg_connect($link);

$random = $_POST['random'];

$query = "SELECT nivelacija.broj_nivelacije, nivelacija.vezni_dokument, roba.sifra, roba.naziv, nivelacija_stavka.kolicina, nivelacija_stavka.pdv, nivelacija.datum_nivelacije, nivelacija_stavka.stara, nivelacija_stavka.nova, nivelacija_stavka.marza, nivelacija_stavka.nova - nivelacija_stavka.stara as razlika , nivelacija_stavka.kolicina * (nivelacija_stavka.nova - nivelacija_stavka.stara) as zaduzenje
from (select * from nivelacija where datum_nivelacije='$random') nivelacija
LEFT JOIN nivelacija_stavka ON nivelacija.nivelacija_id = nivelacija_stavka.nivelacija_id
LEFT JOIN roba on nivelacija_stavka.roba_id = roba.roba_id
ORDER BY nivelacija.nivelacija_id DESC;";

$resultID = pg_query($connect, $query) or die("Greska1. ");


$num_column = pg_num_fields($resultID);     

$csv_header = '';
for($i=0;$i<$num_column;$i++) {
    $csv_header .= "" . pg_field_name($resultID,$i) . "*";
}   
$csv_header .= "\n";

$csv_row ='';
while($row = pg_fetch_row($resultID)) {
    for($i=0;$i<$num_column;$i++) {
        $csv_row .= "" . $row[$i] . "*";
    }
    $csv_row .= "\n";
}
function stripInvalidXml($OriginalString) {
    $NekiKarakteriZaZamenu = array("&", "<", ">", "\"", "'" ,'"');
    $KarakteriKojiMenjaju = array("&amp;", "&lt;", "&gt;", "&quot;", "&apos;" , '');
    $ZamenjenString = str_replace($NekiKarakteriZaZamenu, $KarakteriKojiMenjaju, $OriginalString);                              
    return $ZamenjenString;
}
/* Download as CSV File */
header('Content-type: application/csv');
header('Content-Disposition: attachment; filename=nivelacija.csv');
echo $csv_header . $csv_row;
exit;
?>

這有效,但我只是想要一種將其格式化為 xls 的方法,這樣我就可以通過 php 添加公司徽標、更改字體大小、列寬,因為 CSV 是文本文件。 所以我們每次將這個csv導入到excel時都不需要編輯xls。

由於CSV文件無非是用一些C OMMA小號eperated v alues一個文本文件,你可以對其進行格式化。 正如您已經指出的那樣,您想在此處切換到 xls 文件(Excel)。

您可以查看一些庫,例如PHPExcel ,它們應該可以輕松創建和格式化 Excel 文件。

首先,您需要將 CSV 轉換為 xls。 這篇文章可能對你有幫助: csv to excel轉換

然后您可以編輯 xls 的樣式: 如何使用純 PHP 使用樣式、字體、顏色、表格等格式化 excel 文件?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM