【发布时间】:2013-03-08 14:40:20
【问题描述】:
我正在尝试调用 simplexml_load_file,其中 $url 参数是另一个 .php 文件,该文件将进行一些计算,然后,它将“回显”一个包含 xml 代码的字符串。
看起来像这样:
$urlrequest= $_SERVER['DOCUMENT_ROOT']."/generateXML.php?id=5&output=xml";
$xml = simplexml_load_file($urlrequest);
其中 generateXML.php 将类似于:
<?php
//do some random code
$aux= '<?xml version="1.0" encoding="UTF-8" ?>';
$aux.= "<item>";
$aux.= "<name>John</name>";
$aux.= "<location>somewhere</location>";
$aux.= "</item>";
echo $aux;
?>
问题是,如果 generateXML.php 位于远程 ip 它会正常工作,但是当文件位于同一服务器时,我会收到“无法加载外部实体”错误。
我发现问题可能来自url中的参数。 例如:
$var1=file('dosomething.php'); 工作正常
但是 $var1=file('dosomething.php?id=1'); 返回“打开流失败”错误
我需要能够将这些参数添加到 url,有什么办法吗?
【问题讨论】:
-
XML 标头在哪里?
标签: php