Поиск по этому блогу

пятница, 3 августа 2018 г.

php excel базовый файл экспорта

Здравствуйте!

Уже очень давно занимаясь веб программированием и встречая задачу экспортировать нечто в XLSX - обращаюсь к библиотеке PHP Excel. Прожорливая на ресурсы но зато простая и эффективная. Разобраться с ней сходу порой не так просто поэтому решил выложить "базовый костяк" файла осуществляющего экспорт данных в формат XLSX. Так же в корне должны присутствовать PHPExcel.php и одноимённая директория PHPExcel содержащая все компоненты данной библиотеки.

<?php
/** Error reporting */
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
date_default_timezone_set('Europe/London');
if (PHP_SAPI == 'cli')
die('This example should only be run from a Web Browser');

require_once dirname(__FILE__) . '/PHPExcel.php';

// Create new PHPExcel object
$objPHPExcel = new PHPExcel();

// Set document properties
$objPHPExcel->getProperties()->setCreator("Автор")
->setLastModifiedBy("Автор Последних Изменений")
->setTitle("Заголовок")
->setSubject("Заголовок")
->setDescription("Заголовок")
->setKeywords("Ключевые Слова")
->setCategory("Категория Файла");

$objPHPExcel->getActiveSheet()->setCellValue("A1", "Файл экспорта сформирован автоматически");

// Set active sheet index to the first sheet, so Excel opens this as the first sheet
$objPHPExcel->setActiveSheetIndex(0);

// Redirect output to a client as web browser (Excel5)
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="имя_файла.xlsx"');
header('Cache-Control: max-age=0');
// If you're serving to IE 9, then the following may be needed
header('Cache-Control: max-age=1');

// If you're serving to IE over SSL, then the following may be needed
header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified
header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1
header ('Pragma: public'); // HTTP/1.0

//$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
exit;
?>
инструкция, полезное, программирование, php, php excel,

Заносим информацию в столбцы
$objPHPExcel->getActiveSheet()->setCellValue("A1", "Файл экспорта сформирован автоматически");

Меняем имя файла и прочее в файле - и данные уже успешно экспортированы в xlsx!

Кстати говоря если вам понадобится файл в устаревшем формате xls - достаточно раскомментировать строку
//$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
И закомментировать
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');

Так же оставляю ссылочку на скачивание библиотеки PHPExcel 2015

Надеюсь информация была полезной и экспорт пройдёт без проблем.
Успехов и хорошего дня!

Комментариев нет:

Отправить комментарий

Поделитесь своим мнением.