simplexml_load_string =>序列化' SimpleXMLElement'不允许[错误] //将xml文件内容从url传递给变量

时间:2016-11-02 14:15:31

标签: php xml simplexml-load-string

它不是重复的,因为我读了所有其他的问题和答案,无法解决我的问题,我的有点不同

$tcmb_gov_tr = file_get_contents("http://www.tcmb.gov.tr/kurlar/today.xml");
      $currency_xml = simplexml_load_string($tcmb_gov_tr);
      $tmp_currency = array();
      if($currency_xml->Currency[0]['Kod']=='USD'){
        $_SESSION['currency']['usd_try']['buying'] = $currency_xml->Currency[0]->ForexBuying[0];
        $_SESSION['currency']['usd_try']['selling'] = $currency_xml->Currency[0]->ForexSelling[0];
      }

代码有效但仍在抛出

  

致命错误:未捕获的异常'异常'与消息   '' SimpleXMLElement'的序列化不允许'在[没有活跃   文件]在第0行

我不想得到那个错误我应该怎么做,我从xml获取数值作为数组或对象,你可以建议anohter方法或帮我正确使用该功能

1 个答案:

答案 0 :(得分:1)

简单的最佳解决方案

$_SESSION['currency']['usd_try']['buying'] = (string)$currency_xml->Currency[0]->ForexBuying[0];

我发现它存储为simplexmlelement,当我把(字符串)放在xml元素之前时,会话变量将它存储为字符串然后没有错误。 (字符串)将xml元素调用为字符串函数。