intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Export ra CSV file với Unicode

Chia sẻ: Abcdef_45 Abcdef_45 | Ngày: | Loại File: PDF | Số trang:4

86
lượt xem
3
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài toán: export dữ liệu tiếng Việt UTF-8 thành file CSV có thể hiển thị đúng khi mở bằng Excel. 3 điểm dẫn đến thành công: + Dùng TAB (\t) thay cho COMMA (,) để phân tách các cột + Convert Encoding của dữ liệu cần output bằng UTF-16LE + Gắn chr(255)chr(254) vào đầu của kết quả cuối cùng trước khi output /** * EXPORT ORDER LIST TO CSV FILE * @author khanhdn */ function exportCSV() { global $user; member_access(); $memberInfo = member_info(); $result = drupal_query("SELECT order_id ,order_code ,bill_firstname ,bill_lastname ,order_modify_date ,gand_total ,order_status FROM {order} WHERE shop_code = '".$memberInfo['shop_code']."' ORDER BY...

Chủ đề:
Lưu

Nội dung Text: Export ra CSV file với Unicode

  1. Export ra CSV file với Unicode Bài toán: export dữ liệu tiếng Việt UTF-8 thành file CSV có thể hiển thị đúng khi mở bằng Excel. 3 điểm dẫn đến thành công: + Dùng TAB (\t) thay cho COMMA (,) đ ể phân tách các cột + Convert Encoding của dữ liệu cần output bằn g UTF-16LE + Gắn chr(255)chr(254) vào đầu của kết quả cuối cùng trước khi output /** * EXPORT ORDER LIST TO CSV FILE * @author khanhdn */ function exportCSV() { global $user; member_access(); $memberInfo = member_info(); $result = drupal_query("SEL ECT order_id ,order_code ,bill_firstname ,bill_lastname
  2. ,order_modify_date ,gand_total ,order_status FROM {order} WHERE shop_code = '".$memberInfo['shop_code']."' ORDER BY order_creation_date DESC"); $status_options = array( '1' => 'Neu' ,'2' => 'In Bearbeitung' ,'3' => 'Auf der Post' ,'4' => 'Ausgeführt' ,'5' => 'Zurück' ); $csv = "Order code\tCustomer Name\tModify Date\tOrder Total\tOrder Status\r\n"; if(count($result['data'])) { foreach($result['data'] as $row)
  3. { $order_list = array( 'order_code' => "$row->order_code" ,'customer_name' => $row->bill_firstname. ' ' .$row->bill_lastname ,'modify_date' => mysqlTimestamp(strtotime($row->order_modify_date),'d.m.Y') ,'order_total' => 'CHF '.$row->gand_total ,'order_status' => $status_options[$row->order_status] ); $csv .= join("\t", $order_list)."\r\n"; } } $csv = chr(255).chr(254).mb_convert_encoding($csv, "UTF-16LE", "UTF-8"); header("Content -type: application/x-msdownload"); header("Content -disposition: csv; filename=" . date("Y-m-d") .
  4. "_order_list.csv; size=".strlen($csv)); echo $csv; exit(); } Source: Nguyễn Văn Hùng weblog
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2