如何使用正确的编码在PHP中编写制表符分隔的文本文件?

时间:2012-07-04 10:53:30

标签: php encoding

此代码将制表符分隔的txt文件从数据库写入目录。我的字符编码有问题,因为它无法获得非英文字符,如ñ,é,... 我怎样才能正确编码?我知道我应该使用UTF-8,但是我的代码在哪里适合? db(latin1_swedish_ci)中的字符似乎没问题但在文件中没有问题。 感谢

<?
     @chmod($export_txt, 0777);
    $fe = @fopen($export_txt."/export.txt", "w+");
    if($fe){           
        $somecontent = "";
        $fields_count = 0;           
        // fields headers
        $db->query($sql_view);
        if($row = $db->fetchAssoc()){
            foreach($row as $key => $val){
                if($fields_count++ > 0) $somecontent .= "\t";
                $somecontent .= $key;
            }
        }
        $somecontent .= "\r\n"; 

        $db->query($sql_view);
        while($row = $db->fetchAssoc()){
            $fields_count = 0;
            foreach($row as $key => $val){
                if($fields_count++ > 0) $somecontent .= "\t";
                $somecontent .= $val;                                                                          
            }
            $somecontent .= "\r\n"; 
        }  
        // write some content to the opened file.
        if (fwrite($fe, $somecontent) == FALSE) echo 'file_writing_error'." (export.txt)"; 
        fclose($fe);           

    }
    ?>

1 个答案:

答案 0 :(得分:0)

fwrite($fe, utf8_encode($somecontent))