簡體   English   中英

從MySQL DB將中文單詞導出為CSV

[英]Export Chinese words to CSV from MySQL DB

這是我的代碼:

mysql_set_charset("utf8");
mysql_query("SET NAMES utf8");
header('Content-Type: text/html; charset=utf-8');
mysql_connect("localhost","root","");
mysql_select_db("ladli");
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET COLLATION_CONNECTION = 'utf8_unicode_ci'");

$output         = "";
$table          = ""; 
$sql            = mysql_query("select * from table'");
mysql_query("SET NAMES utf8");
$columns_total  = mysql_num_fields($sql);

for ($i = 0; $i < $columns_total; $i++) {
$heading    =   mysql_field_name($sql, $i);
$output     .= '"'.$heading.'",';
}
$output .="\n";

// Get Records from the table

while ($row = mysql_fetch_array($sql)) {
for ($i = 0; $i < $columns_total; $i++) {

$output .='"'.$row["$i"].'",';

}
$output .="\n";
}

$filename =  "chinese_test.csv";

header('Content-Description: File Transfer');
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: csv" . date("Y-m-d") . ".csv");
header("Content-disposition: filename=".$filename.".csv");
header('Content-Transfer-Encoding: binary');
header('Pragma: public');
print "\xEF\xBB\xBF"; // UTF-8 BOM
print $output;
exit;

在我的數據庫中:測試一下

我在csv中: æˆ'毯

當我嘗試使用PHP下載csv時,我弄亂了csv數據,格式為“ æˆ'毯”等不可讀。

我需要從MySQL數據庫以csv / xsl格式導出中文單詞。

提前致謝。

一個簡單的解決方法是使用Google Spreadsheet。 粘貼(僅在您具有復雜公式時才有值)或導入工作表,然后下載CSV。 我只是嘗試了幾個字符,所以效果很好。

注意:導入時,Google表格確實有限制。 這里

注意:請小心使用Google表格的敏感數據。

編輯:另一種選擇 -基本上,他們使用VB宏或加載項強制將其另存為UTF8。 我沒有嘗試過這些解決方案中的任何一種,但是聽起來很合理。

æˆ'是我是æˆ'是 ”。 請參見使用UTF-8字符查找問題; 我看到的不是我存儲的用於討論該常見問題及其原因的內容。

在中文中,某些字符需要4字節UTF-8字符。 為此,您需要在MySQL中使用utf8mb4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM