Вы можете попробовать это, но вы должны использовать simplexml_load_string для $ xml
$xml // Your main SimpleXMLElement
$xml->addAttribute('encoding', 'UTF-8');
Или вы все равно можете использовать другие средства для добавления кодировки к вашему выводу.
Простая замена
$outputXML=str_replace('<?xml version="1.0"?>', '<?xml version="1.0" encoding="UTF-8"?>', $outputXML);
Регулярные выражения
$outputXML=preg_replace('/<\?\s*xml([^\s]*)\?>/' '<?xml $1 encoding="UTF-8"?>', $outputXML);
DOMDocument - Я знаю, вы сказали, что не хотите использовать DOMDocument, но вот пример
$xml=dom_import_simplexml($simpleXML);
$xml->xmlEndoding='UTF-8';
$outputXML=$xml->saveXML();
Вы можете заключить этот код в функцию, которая получает параметр $ encoding и добавляет его к