0
我使用這個簡單的腳本輸出從PHP到EXCEL文件:如何在從PHP導出到EXCEL時在單元格中保留「零」?
<?php
header('Content-Type: text/csv;');
header('Content-Disposition: attachment; filename="TDO-2017-'. $_GET['lieu'].'.csv');
require('../scripts/lib.php');
?>
"NOM";"PRENOM";"E-MAIL";"TELEPHONE";"ADRESSE";"CODE POSTAL";"VILLE"
<?php
echo "\n";
$rq = mysqli_query($connexion, 'SELECT * FROM tui_inscription WHERE lieu = "'. $_GET['lieu'] .'" AND valid = 1');
while($d = mysqli_fetch_assoc($rq)) {
echo '"' . $d['nom'] . '";"' . $d['prenom'] . '";"' . $d['email'] . '";"' . str_replace("+33","0", $d['telephone']) . '";"' . $d['adresse'] . '";"' . $d['cpostal'] . '";"' . $d['ville'] . '"'."\n";
}
?>
它的工作完美,唯一的問題是在電話號碼的前導零消失。我已經看到很多關於如何使用其他庫來確定單元格類型的解釋,但是因爲我不知道PDO並且腳本已經有效,所以我首先想知道是否有一種方法可以更改我的代碼以執行招。
如果您將文件保存爲.txt擴展名? –
它們正確存儲在文件中,但您使用MS Excel查看它;和MS Excel對待數字和數字(總是失敗,我知道),並且數字沒有前導零....嘗試用'='前綴以便MS Excel將它視爲公式 –
PS,你知道PHP有這個內置的函數,名爲[fputcsv()](http://www.php.net/manual/en/function.fputcsv.php),它會乾淨地編寫一個csv文件,它的醜陋代碼會正確處理字符串內的引號 –