Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 可以解析一个文档,但不能解析另一个文档_Php_Xml_Formatting_Cdata - Fatal编程技术网

Php 可以解析一个文档,但不能解析另一个文档

Php 可以解析一个文档,但不能解析另一个文档,php,xml,formatting,cdata,Php,Xml,Formatting,Cdata,我有两个XML文档,格式如下: 我想用这个来回应他们: 但其中一个起作用,另一个什么也不响应。发生了什么事 更新: 产生错误的文档包含以下地址:' 删除此撇号后,代码将正常工作。我需要一些方法来转义像这样的字符,我怎么做呢?只需echoasXML()您可能会看到第二个文件的错误 echo$xml->asXML(); 以下是有关SimpleXML的简单教程:Espace您的地址: <?php $text = file_get_contents("." . $filename);

我有两个XML文档,格式如下:


我想用这个来回应他们:


但其中一个起作用,另一个什么也不响应。发生了什么事

更新: 产生错误的文档包含以下地址:' 删除此撇号后,代码将正常工作。我需要一些方法来转义像这样的字符,我怎么做呢?

只需echo
asXML()
您可能会看到第二个文件的错误

echo$xml->asXML();

以下是有关SimpleXML的简单教程:

Espace您的地址:

<?php
  $text = file_get_contents("." . $filename); 
  $text = str_replace("'", "&apos;", $text);
  $xml = simplexml_load_string($text); 
  echo $xml->body;
?>

您不应该转义输出吗?我认为simpleXML已经这样做了。无论如何,它可以与一个XML一起工作,那么为什么它不能与另一个XML一起工作呢?这篇不起作用的文章没有回音,这很好,但是如果有其他字符会导致这个问题呢?尝试utf8_decode()而不是str_replace(),这可能是问题所在。