так что ваш пример кода довольно плох, но предполагается, что
$_r['errors'] = array(
'Message 1',
'Message 2',
'Message 3',
'Message 4',
'Message 5',
);
Тогда
$error_message = "Error received for " . $service . ": \n" . impolode("\n", $_r['errors']) . "\n" . "Message received: " . $_r['errors'];
throw new My_Exception($error_message);
Ключ берет ваш массив сообщений об ошибках и объединяет их все вместе с символами новой строки (иличто угодно)
Но я согласен с замечанием, что вы, возможно, неправильно используете структуру исключений.Можете ли вы опубликовать то, что вы пытаетесь сделать?
Общее правило заключается в том, что вы бросаете исключение для каждого уникального события.Вы не собираете кучу сообщений об ошибках, а затем выбрасываете их все сразу.