2012-02-20 98 views
0

我想解析一個位於另一個域的xml文檔。 我想用php來做這個。 這可能嗎?從另一個域用php解析xml

我已經嘗試了simpleXML,但它似乎不工作。

+5

是,這是可能的。什麼不工作?你得到什麼錯誤?你能顯示一些代碼嗎? – 2012-02-20 20:17:04

+1

你的問題的答案是「是」,但我的印象是,這不是你要找的。你有什麼嘗試? – salathe 2012-02-20 20:18:44

+0

以下是我已經tryed – user367864 2012-02-20 20:32:00

回答

3

我們首先要做的是:http://www.stevymahy.com/xml/test.xml的XML格式不正確。在修復之前,您將無法解析此文檔。

怎麼了,現在有

 
    <?xml version="1.0" encoding="utf-8"?> 
    <mahy> 
    <!-- Diaporama --> 
     <diaporama duree="4"> 
     <photo fichier="/admin/uploads/stevy01_001.jpg"></photo> 
     <photo fichier="/admin/uploads/stevy05_001.jpg"></photo> 
     <photo fichier="/admin/uploads/stevy06_001.jpg"></photo> 
     <photo fichier="/admin/uploads/DSC_8133-Modifier.jpg"></photo> 
     <photo fichier="/admin/uploads/appuyevelo.jpg"></photo> 
     <photo fichier="/admin/uploads/atriumplus.jpg"></photo> 
     <photo fichier="/admin/uploads/balancoirine.jpg"></photo> 
    </diaporama> 

    <!-- Biographie --> 
    <bio textetaille="16" ><![CDATA[jhkjdhgkjdhgjksdghkjshgjkshdgjkhsdgjksdhgjksdhgkj]]></bio> 

它僅僅落後過...編輯:我已經發布了完整的XML。它不會消失(再?)。然而,迪奧圖和生物元素必須包含在共同的根節點中。所以也許在包裹<root>

一切後,你得到固定

http://www.php.net/manual/en/function.file-get-contents.php http://www.php.net/manual/en/simplexml.examples-basic.php

 
    // Get the contents of the XML 
    $str_xml = file_get_contents('http://www.stevymahy.com/xml/test.xml'); 

    // Parse the XML 
    $obj_xml = new SimpleXMLElement($str_xml); 

    // ...do something with the parsed XML object 
+0

檢查您的XML是否有效:http://validator.w3.org/check?uri=http%3A%2F%2Fwww.stevymahy.com%2Fxml%2Ftest.xml&charset=%28detect+自動%29&DOCTYPE =內嵌&組= 0 – 2012-02-21 15:05:28