-2

我正在寻找如何在 PHP 中加载 XML 文件并返回不重定向的数据。最好尽可能对最终用户隐藏 xml 内容。

我见过这样的东西,但我不能让它工作,请如果你能用链接示例写出完整的代码..

     public function sendResponse($type,$cause) {

    $response = '<?xml version="1.0" encoding="utf-8"?>';
    $response .= '<response><status>'.$type.'</status>';

            $response = $response.'<remarks>'.$cause.'</remarks></response>';
            return $response;
 }

 ....
 ....

 header("Content-type: text/xml; charset=utf-8");
 echo sendResponse($type,$cause);

如果可以的话请帮忙。提前致谢,SX

4

2 回答 2

0

我不确定你的要求,但首先你不能调用 sendResponse() 因为它不是一个函数,而是一个类中的方法

您需要实例化您的类,然后调用该方法。

例子 :

$yourObject = new YourClass();

$yourObject->sendResponse();

见手册

对于您的情况,请参阅 simpleXML 手册并尝试:

    function sendResponse($type,$cause) {

    $response = '<?xml version="1.0" encoding="utf-8"?>';
    $response .= '<response><status>'.$type.'</status>';

            $response = $response.'<remarks>'.$cause.'</remarks></response>';
            return $response;
 }

$type="type";
$cause="cause";
var_dump(simplexml_load_string(sendResponse($type,$cause)));

如果您的脚本是外部的,您可以使用file_get_contents获取它

$xml = file_get_contents('http://yourTarget.com');

var_dump($xml);
于 2016-02-04T16:58:30.003 回答
0

您的问题在某种程度上误导了我,请确保您是否要加载外部 xml 文件并让您的 PHP 代码对其进行解析。试试下面的代码

Assume the following is your xml content fo text.xml 

<?xml version='1.0' encoding='UTF-8'?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>"

<-- PHP -->

$file = 'http://exmp.com/text.xml';     // give the path of the external xml file
if(!$xml = simplexml_load_file($file))    // this checks whether the file exists
exit('Failed to open '.$file);           // exit when the path is wrong 
print_r($xml);                          // prints the xml format in the form of array 

你的输出将是这个

SimpleXMLElement Object ( 
[to] => Tove 
[from] => Jani 
[heading] => Reminder 
[body] => Dont forget me this weekend!
 ) 

希望这可以帮助...

于 2016-02-04T19:11:16.340 回答