> 백엔드 개발 > PHP 튜토리얼 > 在缺少根的XML文件基础上得到这个内容的XML对象,该如何解决

在缺少根的XML文件基础上得到这个内容的XML对象,该如何解决

WBOY
풀어 주다: 2016-06-13 09:58:39
원래의
1034명이 탐색했습니다.

在缺少根的XML文件基础上得到这个内容的XML对象
我要处理一种用户提交的XML,是缺少根的,即原本XML标准结构为

 
 


 
 

.........
.........


但我的用户们提交XML文件是没有根的
 
 


 
 


于是用simplexml_load_file函数来创建XML对象即不可能,因为解释器会报错
我就想载入XML文件字符串到变量$str,然后再前后添加一个根字符串 之类,形成一个标准XML字符串内容后再用
simplexml_load_string函数来创建XML对象
=================
我所遇到的难题系,首先打算将xml 的文件流载入到$str变量时就已经失败,PHP的文件读取函数好像做了点手脚,将载入的内容都变成空了.fread,file_get_contents函数都不行,请问哪位有高招?

(注:请不要考虑手动在XML上添加一个根,因为这种XML其实是某个游戏的脚本,个游戏专门弄成咁样的..我必须以兼容这个游戏数据的态度来做读取程序)
以下是代码



function GetXMLDOM($filename)
{

$xmlStr=file_get_contents($filename);

if(strpos($xmlStr,''))
//初步验证XML内容是否为该游戏的脚本
{
$xmlStr=''.$xmlStr.'';
return simplexml_load_string($xmlStr);
}
else return false;
}


------解决方案--------------------
我试了一下 函数在判断上有问题

if(strpos($xmlStr,'')) 

修改成 

if(strpos($xmlStr,'
另外 但是到了 simplexml_load_string 这里 读取xml会有问题,我对xml了解不多需要你自己分析一下哪里不符合要求老。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿