Heim > Backend-Entwicklung > PHP-Tutorial > 在缺少根的XML文件基础上得到这个内容的XML对象,该如何解决

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

WBOY
Freigeben: 2016-06-13 09:58:39
Original
1048 Leute haben es durchsucht

在缺少根的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了解不多需要你自己分析一下哪里不符合要求老。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage