2012-03-10 76 views
0

我動態使用此生成XML:PHP的DOMDocument負載XML超時

$domtree = new DOMDocument('1.0', 'UTF-8'); 
$domtree -> formatOutput = true; 
$xmlRoot = $domtree -> createElement("theparent"); 
bla..bla..bla.. 
echo $domtree->saveXML(); 

我使用此

$f = "http://localhost/myapp/xml/products.php"; //full url path 
$doc = new DOMDocument(); 
$doc->load($f) 

bla..bla..bla從PHP加載生成的xml ..

但它花了很長時間執行,我得到這個錯誤:

Warning: DOMDocument::load(http://localhost/myapp/xml/products.php) [function.load]: failed to open stream: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. in F:\xampp\htdocs\myapp\loader\loadxml.php on line 14 

Fatal error: Maximum execution time of 60 seconds exceeded in F:\xampp\htdocs\myapp\loader\loadxml.php on line 16 

我曾經使用相同的方式完成這個加載XML方法,但爲什麼在這個應用程序中,我得到這個錯誤?有沒有特別的xampp或php設置?或我的代碼不正確?

謝謝:)

+0

btw,我正在使用PHP版本5.0.5 – Samodra 2012-03-10 13:49:05

+0

嘗試使用文件路徑的絕對路徑,BTW不應該是products'.xml'嗎?並嘗試下一個解決方案:http://www.php.net/manual/en/domdocument.load.php#91384 – 2012-03-10 13:49:21

+0

不,它是products.php。我生成的XML動態和內容類型是text/xml。順便說一句,謝謝你的鏈接。我試試.. – Samodra 2012-03-10 13:56:52

回答

0

您的腳本試圖下載PHP文件,不能獲取XML輸出。輸出到服務器上的XML文件並取而代之,或創建一個返回XML的Web服務,然後使用類似cURL的東西來使用它。

+0

是的,我也這樣做了。我生成了太多的products.xml並加載如上,它仍然不起作用: (。但我試過上面的註釋如果(!file_exists($ f))echo「文件不存在」,是的,爲什麼我的文件不存在? – Samodra 2012-03-10 14:20:25

+0

哦。allow_url_打開'禁用? (但是,無論如何,這將會發出警告)。路徑不正確?嚴格的文件權限? – Ing 2012-03-10 14:32:28

+0

allow_url_open在On或在php.ini或phpinfo()中有1個值.. OMG我的php有什麼問題#O – Samodra 2012-03-10 14:40:30