"С миру по нитке..." Форум

Вернуться   "С миру по нитке..." Форум > Хобби и увлечения > Копилка опыта

Добро пожаловать на форум "С миру по нитке"!

Копилка опыта Делимся личным опытом...

Ответ
 
Опции темы Опции просмотра
Старый 12.01.2016, 12:50   #1
alagor
Сам себе режиссер
 
Аватар для alagor
 
Регистрация: 31.03.2010
Адрес: Россия
Сообщений: 1,561
Сказал(а) спасибо: 19
Поблагодарили 81 раз(а) в 74 сообщениях
По умолчанию PHP: Как создать xls-файл средствами PHP

PHP: Как создать xls-файл средствами PHP

В процессе написания парсинга столкнулся с задачей занести результат отработки скрипта PHP в файл xls. Поиски в интернете как правило перенаправлял на платные ресурсы... Но мне повезло, нашел интересное и простое решение:
PHP код:
function xlsBOF() {
echo 
pack(«ssssss»0x8090x80x00x100x00x0); 
return;
}
 
function 
xlsEOF() {
echo 
pack(«ss»0x0A0x00);
return;
}
 
function 
xlsWriteNumber($Row$Col$Value) {
echo 
pack(«abc»0x20314$Row$Col0x0);
echo 
pack(«d»$Value);
return;
}
 
function 
xlsWriteLabel($Row$Col$Value ) {
$L strlen($Value);
echo 
pack(«abc»0x204$L$Row$Col0x0$L);
echo 
$Value;
return;

C помощью этих функций можно легко и просто создавать xls-файлы, например так:

Код:
header(«Content-Type: application/force-download»);
header(«Content-Type: application/octet-stream»);
header(«Content-Type: application/download»);;
header(«Content-Disposition: attachment;filename=test.xls»); 
header(«Content-Transfer-Encoding: binary „);
 
xlsBOF(); //начинаем собирать файл
/*первая строка*/
xlsWriteLabel(1,0,“Наименование»);
/*вторая строка*/
xlsWriteLabel(2,0,"№");
xlsWriteLabel(2,1,«Name»);
xlsWriteLabel(2,2,«FerstName»);
/*третья строка*/
xlsWriteNumber(3,0,«1»);
xlsWriteLabel(3,1,«Васечка»);
xlsWriteLabel(3,2,«Васечкин»);
/*...*/
xlsWriteNumber(32,0,«30»);
xlsWriteLabel(32,1,«Петр»);
xlsWriteLabel(32,2,«Петровский»);
 
xlsEOF(); //заканчиваем собирать
]

В итоге получаем простой xls-файл с именем test.xls.
alagor вне форума   Ответить с цитированием
   
Спонсор

Ответ

Метки
function, PHP, xls, парсинг, программирование


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как открыть видео-файл с видеорегистратора типа Satvision H.264DVR? alexs Копилка опыта 2 15.02.2015 18:52
Как записать образ диска средствами Windows 7 из командной строки alexs Копилка опыта 0 12.10.2014 18:23
Бройс Рудольф: Лечение заболеваний считающихся неизлечимыми, естественными средствами alagor Онкология - рак 1 21.07.2014 17:40
Запор. Лечение народными средствами. Helen Здоровье 4 01.03.2014 15:36


Часовой пояс GMT +5, время: 21:58.


Ворота - рольставни
Ворота автоматические гаражные секционные, рольставни, шлагбаумы купить в Тольятти
Рольставни и рольворота;
Шлагбаумы, Болларды, парковки
Автоматика для ворот:
- пульты (радиобрелки);
- привода (двигатели);
- фотоэлементы;
Ворота:
- секционные, подъемные;
- уличные: сдвижные, распашные;
- промышленные, скоростные;
- противопожарные;


Косметика Мирра - натуральная и безопасная. Приходи и стань красивой!



ЛУЧШИЙ ХОСТИНГ!
HandyHost.ru - лучший на сегодняшний день хостинг с лучшей тех.поддержкой!


ПО, ЕГЭ и ОГЭ онлайн"
Школьная аттестация онлайн для детей на СО! Промежуточная аттестация, ЕГЭ и ОГЭ на семейном обучении
Мирра Люкс натуральная косметика Любые работы по дереву в Тольятти и Самарской области - браширование, наличники, двери в баню, шлифовка сруба, деревянные ставни, крыша для срубовых домов и т..д.

  Яндекс.Метрика
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot