как вернуть html структуру из функции в виде строки
Нужно вернуть html структуру из функции в виде строки чтобы записывать в массив
function create_arr_table_body($groups){
$arr = [];
foreach ($groups as $group_name => $value) {
foreach ($value as $user){
$arr[$group_name][] = create_table_body($user);
}
}
return $arr;
}
function create_table_body($user) { ?>
<tbody class="<?=$user['group']?>">
<tr>
<td><?= $user['login'] ?> </td>
<td><?= $user['win'] ?> </td>
<td><?= $user['defeat'] ?></td>
<td><?= $user['score'] ?> </td>
<td><?= $user['percent'] ?>%</td>
</tr>
</tbody>
<?php
}
Ответы (1 шт):
Автор решения: Neolot
→ Ссылка
Используйте оператор конкатенации, "точка".
<?php
function create_table_body($user) {
$output = '';
$output .= '<tbody class="' . $user['group'] . '">';
$output .= '<tr>';
$output .= '<td>' . $user['login'] . '</td>';
$output .= '<td>' . $user['win'] . '</td>';
$output .= '<td>' . $user['defeat'] . '</td>';
$output .= '<td>' . $user['score'] . '</td>';
$output .= '<td>' . $user['percent'] . '</td>';
$output .= '</tr>';
$output .= '</tbody>';
return $output;
}