как содержать файл * .tpl в переменной php?

0

То, что я пытаюсь сделать, это отправить файл excel в виде вложения, созданного из файла smarty tpl, так что в настоящее время это то, что я делаю:

    $smarty->display('export-report.tpl');
    $name=str_replace(" ","",$_POST['catname'])."_".date('d-m-Y');
    Header("Content-Type: application/vnd.ms-excel");
    Header("Content-Disposition: attachment; filename=".$name.".xls");

Но то, что я хочу сделать дальше, вместо того, чтобы загружать этот файл excel непосредственно из браузера, я хочу его добавить и отправить в электронном письме, чтобы сделать это, я сначала сохраняю файл на своем сервере и создаю этот файл excel Мне нужно содержимое excel (html, содержащееся в файле tpl), чтобы находиться внутри переменной php.

Поэтому мой вопрос: как мне это получить:

$smarty->display('export-report.tpl');

Чтобы содержаться в такой переменной:

$content

Благодарю.

Теги:
excel
smarty

1 ответ

0

Вам нужно использовать метод fetch следующим образом:

$content = $smarty->fetch('export-report.tpl');

РЕДАКТИРОВАТЬ

Возможно, вы хотите просто изменить порядок таким образом:

$name=str_replace(" ","",$_POST['catname'])."_".date('d-m-Y');
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=".$name.".xls");
$smarty->display('export-report.tpl');

или

$content = $smarty->fetch('export-report.tpl');
$name=str_replace(" ","",$_POST['catname'])."_".date('d-m-Y');
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=".$name.".xls");
echo $content;
  • 0
    При этом HTML-код, содержащийся в этом документе, воспринимается как текст, но я хочу показать его в электронной таблице Excel. То же самое, что я делал с изменением типа контента и предоставлением пользователю возможности загружать электронную таблицу, которая отображает этот HTML. Ты понял мою точку зрения?
  • 0
    @SQLDummy Я обновил свой ответ

Ещё вопросы

Сообщество Overcoder
Наверх
Меню