PHP XML和数组互相转换详解

高洛峰
高洛峰 原创
2023-03-04 06:08:01 1126浏览

PHP XML和数组互相转换

//数组转XML
  function arrayToXml($arr)
  {
    $xml = "<xml>";
    foreach ($arr as $key=>$val)
    {
      if (is_numeric($val)){
        $xml.="<".$key.">".$val."</".$key.">";
      }else{
         $xml.="<".$key."><![CDATA[".$val."]]></".$key.">";
      }
    }
    $xml.="</xml>";
    return $xml;
  }
 
  //将XML转为array
  function xmlToArray($xml)
  { 
    //禁止引用外部xml实体
    libxml_disable_entity_loader(true);
    $values = json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), true);   
    return $values;
  }


五个在XML文件中预定义好的实体:

1.png

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

更多PHP XML和数组互相转换详解相关文章请关注PHP中文网!


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。