Mysql
 sql >> база данни >  >> RDS >> Mysql

Създаване на Excel файл от MySQL

Не съм сигурен за .xls, но за извеждане на MySQL резултат като CSV таблица функцията fputcsv го прави без много шум:

// Clear any previous output
ob_end_clean();
// I assume you already have your $result
$num_fields = mysql_num_fields($result);

// Fetch MySQL result headers
$headers = array();
$headers[] = "[Row]";
for ($i = 0; $i < $num_fields; $i++) {
    $headers[] = strtoupper(mysql_field_name($result , $i));
}

// Filename with current date
$current_date = date("y/m/d");
$filename = "MyFileName" . $current_date . ".csv";

// Open php output stream and write headers
$fp = fopen('php://output', 'w');
if ($fp && $result) {
    header('Content-Type: text/csv');
    header('Content-Disposition: attachment; filename='.$filename);
    header('Pragma: no-cache');
    header('Expires: 0');
    echo "Title of Your CSV File\n\n";
    // Write mysql headers to csv
    fputcsv($fp, $headers);
    $row_tally = 0;
    // Write mysql rows to csv
    while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
    $row_tally = $row_tally + 1;
    echo $row_tally.",";
        fputcsv($fp, array_values($row));
    }
    die;
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. хибернация + mysql + зареждане на данни във файл

  2. Автоматично стартиране на MySQL сървър на Mac OS X Yosemite/El Capitan

  3. Дублиране на MySQL таблица, индекси и данни

  4. Алтернативи на MySQL Workbench - ClusterControl Database User Management

  5. Изчислете делта (разлика на текущия и предишния ред) mysql група по конкретна колона