如何从PHP代码下载Excel工作表

如何从PHP代码下载Excel工作表,php,Php,我已经编写了从数据库获取数据并将其存储在Excel工作表中的代码。我只想下载Excel文件。但是下面的代码将PHP文件输出作为我的excel文件内容。但是我需要下载在PHP文件中创建的Excel文件 <?php $start_date="01/06/2010"; $end_date="23/06/2010"; $filename=$user.".xls"; require 'DB.php' ; inc

我已经编写了从数据库获取数据并将其存储在Excel工作表中的代码。我只想下载Excel文件。但是下面的代码将PHP文件输出作为我的excel文件内容。但是我需要下载在PHP文件中创建的Excel文件

 <?php 
 $start_date="01/06/2010";
          $end_date="23/06/2010";
          $filename=$user.".xls";

          require 'DB.php' ; 
          include 'Spreadsheet/Excel/Writer.php'; 
          $excel = new Spreadsheet_Excel_Writer($filename);
          $format_bold =& $excel->addFormat();
          $format_bold->setBold();
          $format_bold->setColor('red'); 
          $sheet= $excel->addWorksheet('Class I');
          $sheet->write(0, 0, "Field Name",$format_bold);
          $sheet->write(0, 1,"Field Name", $format_bold);
          $sheet->write(0, 2, "Filed Name",$format_bold); 
          $sheet->write(0, 3,"Filed name", $format_bold);
          $db = DB::connect( connect query);
          $q=$db->getAll("select * from table_name"); 
          $rowCount=1;
         foreach ($q as $row)
         {
                foreach ($row as $key => $value) 
                 {
                    $sheet->write($rowCount, $key, $value);
                 }
      $rowCount++;
        }
header('Pragma: no-cache');
header('Expires: 0');
header("Content-type: application/x-msexcel");
header("Content-Type: application/force-download");
header('Content-Disposition: attachment; filename="'$filename'"');
?> 

您需要添加对方法的调用以生成内容。这样,您也不需要任何头,因为该方法将为您生成它们

$excel->send($filename);
错误报告()切换到最大lvl

header ( "Expires: Mon, 1 Apr 1974 05:00:00 GMT" );
header ( "Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT" );
header ( "Cache-Control: no-cache, must-revalidate" );
header ( "Pragma: no-cache" );
header ( "Content-type: application/x-msexcel" );
header ( 'Content-Disposition: attachment; filename="'.$filename.'"' );
header ( "Content-Description: PHP Generated XLS Data" );
print $sheet;