Я хочу добавить функцию экспорта в слово для одного из моих блейдов в Laravel.Я использовал этот пакет.
composer require phpoffice/phpword
Мой контроллер, включая функцию экспорта в текстовые слова ниже.Когда пользователь вставляет obj_id в блэйд-форму, контроллер получает имя и фамилию из таблицы hrp1702.Экспорт в слово происходит внутри контроллера.Однако я хочу добавить эту функциональность к лезвию.Это возможно?
Это контроллер
public function work(Request $bb)
{
$cc = $bb -> get('obj_id');
$m = DB::table('hrp1702') -> where('object_id', $cc)->value('first_name');
$n = DB::table('hrp1702') -> where('object_id', $cc)->value('last_name');
$wordTest = new \PhpOffice\PhpWord\PhpWord();
$newSection = $wordTest->addSection();
$newSection->addText('FIRST NAME: '.$m);
$newSection->addText('LAST NAME: '.$n);
$objectWriter = \PhpOffice\PhpWord\IOFactory::createWriter($wordTest, 'Word2007');
try
{
$objectWriter->save(storage_path('TestWordFile.docx'));
}
catch (Exception $e)
{
}
return response()->download(storage_path('TestWordFile.docx'));
}
}
Ниже вы можете увидеть лезвие, которое я хочу экспортировать в слово.Это очень простой клинок, который берет кулак и фамилию из таблицы БД.Я хочу добавить к кнопке внизу, что экспорт в слово при нажатии.Не внутри контроллера.Не могли бы вы помочь, пожалуйста?
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Full Name</title>
</head>
<body>
First Name: <b> {{ $onoma }}</b><br>
Last Name: <b> {{ $epitheto }}</b><br>
<form method="post" action='/exagogi1'>
<input type="submit" value="Export to Word" />
</form>
</body>
</html>