Я работаю над приложением Laravel API, в котором у меня есть некоторые динамические данные. Я перебираю данные (это массив) внутри HTML. HTML-код встроен в переменную PHP в формате herodoc.
После заполнения динамических переменных в html я сохраняю содержимое в переменной, преобразовываю его в формат base64 и возвращаю в качестве ответа.
Проблема заключается в том, что переменные PHP внутри HTML не повторяются правильно и выдают ошибки: ErrorException
Преобразование массива в строку
Моя функция PHP
public function showPDF($data){
$names = $data[0];
$amount = $data[1];
//Embedded HTMl whereby am populating the above variables
$my_var = <<<EOD
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title> PDF Output| </title>
<style type="text/css">
body{
font-size: 13px;
}
</style>
</head>
<body>
<table>
<thead>
<tr>
<th>Benefits</th>
<th> Benefit Limit</th>
<th> Cover</th>
</tr>
</thead>
<tbody>
<tr>
<?php foreach($names as $name){ ?>
<td> <?php echo $name ?> </td>
<?php } ?>
<td> 14-05-2019 </td>
</tr>
</tbody>
</table>
</body>
</html>
EOD;
dd($my_var);
//Convert Final PDF to base64
$b64Doc = chunk_split(base64_encode(file_get_contents($my_var)));
return $b64Doc;
}