<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру 2.0

PHP и MySQL с Нуля до Гуру 2.0

Данный курс научит Вас программировать на самом популярном Web-языке в мире - PHP. Курс состоит из 11 разделов, в которых с нуля рассказывается и показывается процесс написания различных скриптов на PHP.

В курсе Вы узнаете всю необходимую теоретическую часть, а также увидите массу практических примеров, в том числе, и из моей практики.

Почти к каждому уроку идут упражнения.

Просмотрев данный курс, Вы сможете создавать абсолютно любые PHP-сайты любой сложности.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Генерация XLS на PHP

Генерация XLS на PHP

Очень часто необходимо делать экспорт каких-то данных, например, из базы данных в Excel-файл. Например, какой-нибудь прайс-лист преобразовать в удобный формат из базы данных и сгенерировать XLS-файл, который смогут без проблем скачать посетители. И вот как генерировать XLS на PHP, я расскажу в этой статье.

Нам потребуется с Вами отдельная библиотека, которая позволяет работать с Excel-файлами. Называется она PHPExcel, и скачать её можно здесь: http://phpexcel.codeplex.com.

Давайте её применим для генерация Excel-файла через PHP-скрипт:

<?php
  require_once 'phpexcel/PHPExcel.php'; // Подключаем библиотеку PHPExcel
  $phpexcel = new PHPExcel(); // Создаём объект PHPExcel
  /* Каждый раз делаем активной 1-ю страницу и получаем её, потом записываем в неё данные */
  $page = $phpexcel->setActiveSheetIndex(0); // Делаем активной первую страницу и получаем её
  $page->setCellValue("A1", "Hello"); // Добавляем в ячейку A1 слово "Hello"
  $page->setCellValue("A2", "World!"); // Добавляем в ячейку A2 слово "World!"
  $page->setCellValue("B1", "MyRusakov.ru"); // Добавляем в ячейку B1 слово "MyRusakov.ru"
  $page->setTitle("Test"); // Ставим заголовок "Test" на странице
  /* Начинаем готовиться к записи информации в xlsx-файл */
  $objWriter = PHPExcel_IOFactory::createWriter($phpexcel, 'Excel2007');
  /* Записываем в файл */
  $objWriter->save("test.xlsx");
?>

После выполнения скрипта у Вас рядом с PHP-файлом появится XLSX-файл, который Вы легко сможете открыть в Excel 2007 или более поздней версии.

Вообще, библиотека достаточно большая и там есть очень много возможностей. Но представленных в данной статье уже более, чем достаточно для большинства случаев.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (12):

top1995 top1995 05.03.2012 00:12:50

А можно с помощью этой библиотеки дополнить уже существующий XLS файл?

Ответить

Admin Admin 05.03.2012 00:24:43

Да, можно.

Ответить

filoleg filoleg 23.03.2012 09:26:32

Спасибо. Но есть вопрос. Как скажем организовать, чтобы файл не записывался, а выдавался на скачивание? Понимаю, что вопрос странный, но опыта в php мало.

Ответить

Admin Admin 23.03.2012 09:54:47

В таких случаях генерируют файл, затем дают на него ссылку. А раз в сутки запускается скрипт и удаляет все эти файлы. Так будет сделать правильно.

Ответить

filoleg filoleg 23.03.2012 10:06:12

По поводу подключения к joomla. Похоже сперва надо сделать изменения, указанные в данной ссылке: http://klevismiho.com/phpexcel-and-joomla/ После этого работает стабильно.

Ответить

lev_100rus lev_100rus 27.10.2013 15:56:43

У Вас опечатка // Добавляем в ячейку A2 слово "World1" Заместо знака восклицания, у Вас стоит "1"

Ответить

Admin Admin 27.10.2013 22:09:05

Спасибо, исправил!

Ответить

anna_letneva@mail.ru anna_letneva@mail.ru 30.10.2013 23:24:32

Добрый вечер, скажите, а куда класть данную библиотеку? а то пример копирую, он не работает

Ответить

Admin Admin 31.10.2013 10:16:20

require_once 'phpexcel/PHPExcel.php'; - здесь указан путь.

Ответить

anna_letneva@mail.ru anna_letneva@mail.ru 31.10.2013 10:26:04

выполняю скрипт,но файл не появляется

Ответить

Silver78 Silver78 25.08.2016 17:41:17

Михаил, а можно более подробно изложить использование данной библиотеки для простого примера: на страницу выводится html-таблица и значок(типа "сгенерировать таблицу") в углу. И только после клика по этому значку генерируется excel-файл с сохранением всех стилей (ну или большей их части по возможности). на сайте разработчика не понятно описано все. заранее спасибо!

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.