Что лучший способ состоит в том, чтобы создать файл XLS в PHP

Я в настоящее время пытаюсь выяснить лучший способ создать .xls файл из PHP. Кажется мне, что все, что я должен сделать, изменить тип контента заголовка на "application/vnd.ms-excel", и затем выходные данные в запятой разделили формат. Действительно ли это - лучший способ сделать это?

Спасибо за любую справку!
Столица

Править

Это было бы плохо, чтобы просто произвести данные как HTML? У меня уже есть класс, который я хотел бы расширить для этой проблемы, таким образом, я предпочту избегать решения других производителей. Я просто должен знать то, что лучший способ произвести данные был бы в порядке, чтобы получить все возможное от того формата файла.

После рассмотрения PHPExcel это, кажется, лучшее решение для этой проблемы. Я ценю все Ваши ответы, и я дал бы три корректных ответа, если я мог lol. Но голоса должны будут сделать :)

21
задан Metropolis 28 June 2010 в 16:10
поделиться

6 ответов

Зависит от того, нужен ли вам файл CSV или файл XLS. Файл XLS может включать информацию о форматировании ячеек, а также блокировку строк / столбцов, средства защиты и другие функции, которые невозможны в файле CSV. Также имейте в виду, что Excel некорректно поддерживает содержимое в кодировке UTF-8 при открытии файлов CSV.

Если вам нужен отформатированный файл XLS, вам понадобится библиотека, такая как PhpSpreadsheet , которая может записывать файл с таким форматированием, или COM, если ваш сервер работает в Windows с установленным Excel

]
14
ответ дан 29 November 2019 в 20:55
поделиться

Вы можете использовать один из XML-форматов , которые поддерживает Microsoft Office.

Подробности и спецификации см. На сайте Microsoft OpenXML Developer .

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

Конечно, все зависит от того, что вы имеете в виду под:

«получить максимум от этого формата файла»

Если у вас есть простые таблицы без форматирования, файлы CSV могут быть всем, что вам нужно; однако, если вы хотите использовать больше функций электронной таблицы, я бы рекомендовал взглянуть на OpenXML.

3
ответ дан 29 November 2019 в 20:55
поделиться

Да, это один Возможный способ - если вам нужен простой CSV-файл, который будет открываться в Ms Excel.

Если вам нужен насыщенный файл XLS, существует множество вариантов, включая использование сторонних библиотек DLL, таких как CarlosAg.ExcelXmlWriter.dll для создания файла XLS. Вы можете найти образцы использования этой dll в сети или Посмотрите здесь

0
ответ дан 29 November 2019 в 20:55
поделиться

Попробуйте использовать обертку XLS файла, как в этом посте на SO.

1
ответ дан 29 November 2019 в 20:55
поделиться

Посмотрите на этот пакет PEAR: Spreadsheet Excel Writer

1
ответ дан 29 November 2019 в 20:55
поделиться

Вы можете просто вывести html, и более новые версии Excel его прочитают. Я не знаю, сколько форматирования вы можете с этим сделать.

Если вам нужен набор данных, расширенное форматирование или формулы, я добился успеха с PHPExcel .

Я предпочитаю записывать файлы CSV. CSV - это очень простой для написания формат и легкое преобразование из существующих скриптов таблиц HTML. Он также имеет то преимущество, что его может читать широкий спектр программ для работы с электронными таблицами, не принадлежащих Microsoft. Если вы можете сделать CSV предпочтительным форматом файла для своего веб-приложения, вы получите вознаграждение, когда вам придется принять электронную таблицу в качестве входных данных. Читать и анализировать файл CSV намного, намного проще, чем файл Excel.

2
ответ дан 29 November 2019 в 20:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: