Como dice abimaelrc lo mejor es usar las librerías establecidas por PHPExcel (las puedes descargar de
http://phpexcel.codeplex.com/). Te dejo un ejemplo para exportar a un archivo de excel:
Código PHP:
Ver original<?php
include ("CONEXION_MYSQL.php");
//incluye las clases
require_once('phpexcel/Classes/PHPExcel.php');
require_once('phpexcel/Classes/PHPExcel/Reader/Excel2007.php');
require_once('phpexcel/Classes/PHPExcel/IOFactory.php');
$objPHPExcel = new PHPExcel();
//se genera las propiedades del documento y algunos datos sobre autoría
$objPHPExcel->getProperties()->setCreator("MiLista (Bernardo Serrano & Miguel Murguía)")
->setLastModifiedBy("MiLista (Bernardo Serrano & Miguel Murguía)")
->setTitle("Office 2007 XLSX Report Document")
->setSubject("Office 2007 XLSX Report Document")
->setDescription("Report document for Office 2007 XLSX, generated using PHP classes.");
//la seguridad del documento
$objPHPExcel->getSecurity()->setLockWindows(false)
->setLockStructure(false);
//se toman los datos que serán exportados en el archivo de excel
//lista de alumnos con sus respectivos nombres y número de cuenta
$gpo= $_SESSION[grupo];
$usuario_gpo=mysql_query("SELECT ID_GRUPO,GRUPO_NUMERO,ESCUELA,MATERIA FROM ml_dat_GRUPO WHERE ID_GRUPO = '".$gpo."'"); $nombre_gpo=$row_gpo[0];
$mail= $_SESSION[usuario];
$result = mysql_query("SELECT MATRICULA,AP_PATERNO,AP_MATERNO,NOMBRE,EMAIL FROM ml_dat_ALUMNO WHERE ID_GRUPO='".$nombre_gpo."' ORDER BY AP_PATERNO ASC ");
$rowNumber = 2;
$col = 'A';
foreach($row as $cell) {
$objPHPExcel->getActiveSheet()->setCellValue($col.$rowNumber,$cell);
$col++;
}
$rowNumber++;
}
//nombre de las columnas
$headings = array('MATRICULA', 'AP_PATERNO', 'AP_MATERNO', 'NOMBRE','EMAIL');
$rowNumber3 = 1;
$col3 = 'A';
foreach($headings as $heading) {
$objPHPExcel->getActiveSheet()->setCellValue($col3.$rowNumber3,$heading);
$col3++;
}
// Se modifican los encabezados del HTTP para indicar que se envia un archivo de Excel.
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('Content-Disposition: attachment;filename="rep_alumnos.xlsx"'); header('Cache-Control: max-age=0');
//Creamos el Archivo .xlsx
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
?>