У меня есть таблица MySQL, содержащая пользовательские данные.
Я хочу, чтобы администратор мог нажать кнопку и загрузить все пользовательские данные в организованный текстовый формат или PDF файл, по одному пользователю на страницу.
Как это сделать?
Между Rich Text Format (rtf) и pdf, я призываю вас склониться к RTF.
Причина: редактируется. Просто откройте его в MS Word (или многих других редакторах), и ваш клиент сможет добавлять заголовки, нижние колонтитулы, подчеркивать некоторые данные, легко копировать в более длинный документ и т.д. И т.д.
Я генерирую "многословные" отчеты для своих клиентов в RTF, и они считают это замечательным.
PDF предназначен для печати. Период. Поэтому, хотя можно повторно назначить PDF-документ, всегда будет легче сделать это из документа RTF.
Есть несколько библиотек PHP доступно. Или вы можете сгенерировать его с нуля самостоятельно. Пример и пример.
Кроме того, программное обеспечение, я рекомендую руководство Шон Берк.
Я знаю, что это ответ, но в последнее время я столкнулся с этой проблемой, и на нее есть несколько вопросов, но нет ответов, которые не связаны с какой-либо сторонней библиотекой или другим программным обеспечением - вот мое решение.
Просто создайте документ RTF шаблона, используя текстовый редактор, такой как MS Word или Notepad или TextEdit на Mac, и используйте PHP str_replace() для удаления содержимого, которое вы хотите.
Пример:
//load the rtf template as a string
$rtf = file_get_contents('mytemplate.rtf');
//replace placeholder text with content from database
$rtf = str_replace('content', 'here is my rtf content!', $rtf);
//and now serve the file as an rtf download:
Header("Content-type: application/rtf");
Header("Content-Disposition: attachment;filename=rtf.rtf");
echo $rtf;
exit();
Я не уверен, что для PDF файлов можно использовать такой же метод, но в прошлом это избавляло меня от многих головных болей, особенно когда вы пытались использовать довольно плохо документированные классы PHP/RTF-конвертера или рассматривали решения, которые включают в себя возможность установки программного обеспечения на сервер или запуск команды из оболочки.
Я также использовал PHPRTFLite, но обнаружил, что он слишком сложный, чтобы выполнять простые задачи и слишком неопределенно документирован, чтобы быть много помощь.
Библиотека PHPExcel стоит вашего внимания, также поддерживает различные форматы
чтобы сгенерировать PDF файл, вы должны попробовать tcpdf.