Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Xuất bản ghi trong tệp excel

Không cần tải xuống các thư viện bên ngoài - mọi thứ bạn cần cho việc này đã được tích hợp sẵn trong PHP.

Các bước:

  1. Thực hiện truy vấn trong php để lấy các hàng bạn muốn xuất ra
    Bạn có thể sử dụng SELECT * FROM table WHERE id IN (1,2,...)
  2. Sử dụng mysql_fetch_array() hoặc mysql_fetch_assoc() để lấy từng hàng một
  3. Sử dụng fputcsv() để xuất chúng thành tệp kết thúc bằng csv - điều này sẽ thoát đúng cách dữ liệu của bạn

http://www.php.net/manual/en / functions.mysql-fetch-array.php
http://php.net/manual/en/ Chức năng.fputcsv .php

Excel sẽ có thể đọc tệp.

Ghi đè các giá trị mặc định cho fputcsv để sử dụng các tab cho dấu phân cách và Excel sẽ có thời gian đọc tệp dễ dàng hơn. Nếu bạn sử dụng dấu phẩy (mặc định), bạn có thể cần phải chọn dấu phẩy làm dấu phân cách khi nhập Excel.

Đây là một ví dụ hoạt động giả sử bạn đã thiết lập các hàng:

$rows; // predefined
$filename = 'webdata_' . date('Ymd') . '.csv';

header("Content-Disposition: attachment; filename=\"$filename\"");
header("Content-Type: application/octet-stream"); 
// that indicates it is binary so the OS won't mess with the filename
// should work for all attachments, not just excel

$out = fopen("php://output", 'w');  // write directly to php output, not to a file
foreach($rows as $row)
{
  fputcsv($out, $row);
}
fclose($out);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tự động điền quốc gia và thành phố từ mã zip và tùy chọn

  2. Làm cách nào để hoàn tác một câu lệnh mysql mà tôi vừa thực thi?

  3. MySQL ERROR 1046 (3D000):Không có cơ sở dữ liệu nào được chọn trên truy vấn cập nhật

  4. Canonical Function EntityFunctions.TruncateTime không tồn tại trong MYSQL

  5. Ruby - Đã xảy ra ngoại lệ:[Mysql2 ::Error] đã đóng kết nối MySQL