У вас есть несколько проблем в вашем коде:
Проблема 1: вы не можете объединить функцию как переменную, вам просто нужно разбить код и затем сохранить в переменнойиспользуйте Concat, иначе это вызовет ошибку разбора.
Проблема 2: Не знаю, почему вы используете $code=0 as $row
в foreach, это даст вам ошибку Invalid argument
.
Проблема 3: Это только мое предположение, согласно этому id="trainingCode_' . $key + 1 . '"
вы используете этот код внутри цикла, если да, то эта часть name="trainingCode[]"
также создаст проблему, когда выполучить запись, как вы узнаете правильное отношение?
Ваш пример кода:
<?php
$myString = '<tr>
<td style="width:30%" id="trainingCode_' . $key + 1 . '">
<select class="select2 form-control" data-live-search= "true" name="trainingCode[]">
<option value="0">SELECT CODE</option>';
// use your foreach loop here
foreach ($code as $row) {
$myString .= '<option value="'.$row.'">'.$row.'</option>'; // contact wit $myString
}
$myString .= '</select></td></tr>';
$traning[] = $myString;
?>