Fatal error: Uncaught Exception: String could not be parsed as XML
В общем как я понял, ошибка заключается в том, что файлы передаются строкой; есть еще один нюанс: данная ошибка вылезает только при включенном vpn; т.е. если vpn выключен, то все работает нормально и ошибка не вылезает
Вот xml:
<ValCurs Date="31.03.2023" name="Foreign Currency Market">
<Valute ID="R01010">
<NumCode>036</NumCode>
<CharCode>AUD</CharCode>
<Nominal>1</Nominal>
<Name>Австралийский доллар</Name>
<Value>51,5476</Value>
</Valute>
<Valute ID="R01020A">
<NumCode>944</NumCode>
<CharCode>AZN</CharCode>
<Nominal>1</Nominal>
<Name>Азербайджанский манат</Name>
<Value>45,3449</Value>
</Valute>
<Valute ID="R01035">
<NumCode>826</NumCode>
<CharCode>GBP</CharCode>
<Nominal>1</Nominal>
<Name>Фунт стерлингов Соединенного королевства</Name>
<Value>94,9009</Value>
</Valute>
</ValCurs>
вот php:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "$link"));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
$result = curl_exec($ch);
$xml = $result;
$xml_obj = new SimpleXMLElement($xml);
Источник: Stack Overflow на русском