Всем здравствуйте! Опишу в кратце приведенную ниже галиматью, в данном коде я произвожу поиск accept_id из таблицы orderitems, которые соответствуют id в таблице accept, чтобы потом вывести номер документа order_id, максимум всего может быть два номера документа и не более. Код в целом рабочий, номера документов я получаю, но я не знаю как мне сделать вывод, в данном случае выводится только один номера документа, вместо двух номеров, я понимаю что дело в том, что это из-за двух указанных return, но я уже не знаю как сделать по другому, оператор echo для каждой из строк не подходит, т.к. выводит данные над таблицей gridview, а не в ячейке таблицы.
[
'label' => '',
'attribute' => 'chek',
'value' => function($data){
$var1 = $data->orderitems;
foreach ($var1 as $znach1) {
$accept[] = $znach1->accept_id;
$orders[] = $znach1->order_id;
}
return $data->id == $accept[0] ? Html::a(Html::encode($orders[0] . ', '), ['order/view', 'id' => $orders[0]]) : '';
return $data->id == $accept[1] ? Html::a(Html::encode($orders[1]), ['order/view', 'id' => $orders[1]]) : '';
},
'format' => 'html',
],
Переписывал код еще следующим образом, но как-то тоже не помогло мне
foreach ($var1 as $key => $value) {
$accept[] = $value->accept_id;
$orders[] = $value->order_id;
return $data->id == $accept[$key] ? Html::a(Html::encode($orders[$key] . ', '), ['order/view', 'id' => $orders[$key]]) : '';
}