將 CSV 檔案加上 UTF BOM 讓它可以在 Windows 被 EXCEL 正確的開啟沒有亂碼的問題
在 UTF-8 文件中放置 BOM 主要是微軟系統的習慣。但是真的沒有必要帶拉!!!!
http://stackoverflow.com/questions/2223882/whats-different-between-utf-8-and-utf-8-without-bom
According to the Unicode standard, the BOM for UTF-8 files is not recommended:
圖片和內文不太相關 |
下面提供一種在 windows 上面,政治正確的解法。 XDXD
// ========================================================
// 產生現在的秒數
$time_string = date("YmdHis");
// 寫入 utf8 with BOM
function writeUTF8File($filename,$content)
{
$f = fopen($filename, 'w');
fwrite($f, pack("CCC", 0xef,0xbb,0xbf));
fwrite($f,$content);
fclose($f);
}
$f = 'uploads/private/'.$time_string.'.csv';
$fdir = 'uploads/private/';
// 檔案不存在就先建立檔案
if (!file_exists($fdir)) {
mkdir($fdir);
}
writeUTF8File($f,$csv);
echo 'CSV 輸出完成,請點選連結下載。
';
// ========================================================
沒有留言:
張貼留言