2014-11-03 97 views
0

我創建了一個包含表單的網站。提交文本時將打印到.csv文件中。 問題是像ÅÄÖ這樣的字母被打印爲「Ã¥」或「Ã」。我能做些什麼來保存這些信件?在寫入文件時保留特殊字符

<?php 
    $fname = $_POST['fname']; 
    $lname = $_POST['lname']; 
    $file = "register.csv"; 
    $person = $fname.';'. $lname."\n"; 
    file_put_contents($file, $person, FILE_APPEND | LOCK_EX); 
?> 

回答

0

最有可能的問題是讀取文件。 PHP腳本應該以接收字母的方式存儲字母。 如果您使用Excel讀取CSV文件 - 默認情況下,編碼將爲非UTF。你應該用一些文本編輯器檢查你的文件(或者先將它導入到excel設置編碼中),並確保文件以utf-8打開。

+0

當打開記事本文件它顯示正確的字母。謝謝! – Mangs 2014-11-03 22:30:20

0

嘗試增加UTF-8 BOM

file_put_contents($myFile, "\xEF\xBB\xBF". $content, FILE_APPEND | LOCK_EX);