Не могу вывести msgbox через JSON

Есть AJAX обработчик, и результат работы мне надо вывести в формате JSON. если выводить результат в виде текста (строки), то всё хорошо выводится. А если выводить в виде msgbox то происходит ошибка. Вот так выводится хорошо:
$msg = "
{$msg}
"; echo "{"text": "{$msg}"}";
А так не выводится, хотя я использую "фильтр", как в фидбэк:
msgbox( "Готово!", $msg ); $tpl->result['info'] = str_replace( '/templates/bZ2020', $config['http_home_url'] . 'templates/' . $_REQUEST['skin'], $tpl->result['info'] ); $tpl->result['info'] = str_replace ('"', '"', $tpl->result['info']); $tpl->result['info'] = str_replace( "{", '', $tpl->result['info'] ); $tpl->result['info'] = str_replace( "}", '', $tpl->result['info'] ); $tpl->result['info'] = str_replace( "r", '', $tpl->result['info'] ); $tpl->result['info'] = str_replace( "n", '', $tpl->result['info'] ); $tpl->result['info'] = str_replace( "t", '', $tpl->result['info'] ); echo "{"text": "{$tpl->result['info']}"}";
Подскажите где проблема? уже раза 3 возвращался к этому, но без толку... Заранее спасибо :)
Источник: dle-faq.pro