Maison  >  Article  >  développement back-end  >  -关于PHP DomDocument 函数的有关问题

-关于PHP DomDocument 函数的有关问题

WBOY
WBOYoriginal
2016-06-13 11:48:38739parcourir

求助-关于PHP DomDocument 函数的问题

本帖最后由 Dana_Zhang 于 2014-02-17 00:26:13 编辑 大神们求助,如果别人给我传递的XML格式字符串,标签里面带有    或者  &  我new DomDocument 之后 使用 loadXML 函数载入的是报错  怎么办呀~~

补充一下:我使用的  PHP 版本是 5.2.17的 IIS: 是7.5 的版本  服务器是: windows server 2008 R2
------解决方案--------------------
用html_entity_decode(),然后再new DomDocument 
------解决方案--------------------
如果特殊字符 、& 不在 CDATA 标记中且没有转义,那么他就不是 XML
你可以用 loadHTML 方法载入
------解决方案--------------------
是不是转义问题
------解决方案--------------------
$dom  = new  DOMDocument ;<br />	$dom -> loadXML ( '<msg><text>我是测试字符串。</text></msg>' );<br />	if (! $dom ) {<br />		echo  'Error while parsing the document' ;<br />		exit;<br />	}<br /><br />	$s  =  simplexml_import_dom ( $dom );<br /><br />	echo $s->text;


------解决方案--------------------
if ( file_exists ( 'test.xml' )) {<br />     $xml  =  simplexml_load_file ( 'test.xml' );<br /> <br />     echo $xml->text;<br />} else {<br />    exit( 'Failed to open test.xml.' );<br />}


test.xml
<?xml version="1.0" encoding="utf-8"?><br /><msg><br />  <text>我是测试字符串。</text><br /></msg>

------解决方案--------------------
你首先确定你的xml是不是一个标准的xml,你可以去w3网站看看xml的规范,规范中不可以有这些特殊字符的。
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:大家觉得Thinkphp如何样Article suivant:实现微信墙效能得原理