我在我的新网站上为教育目的构建了一个手工制作的导出系统,并且我最终遇到了csv编码的问题。 (希腊字符)
脚本代码:
if(isset($_POST['export'])){
header("Content-Encoding: UTF-8");
header("Content-type: text/csv; charset=utf8");
header("Content-Disposition: attachment; filename=oramatismos.csv");
$export_query = $connect->prepare("SELECT * FROM oramatismos");
$export_query->execute();
fputcsv($file, explode(',',$titles));
while($list = $export_query->fetch(PDO::FETCH_ASSOC)){
fputcsv($file,$list,';',' ');
}
fclose($file);
exit();
}
数据库表列设置为utf8_unicode_ci
。
网站是使用PDO构建的,在连接中代码如下:
try{
$connect = new PDO("mysql:host=".HOST.";dbname=".DB.";charset=utf8",
DB_USER,DB_PASS);
} catch(Exception $e){
echo $e->getMessage();
}