簡體   English   中英

如何在PHP中使用XML Reader在遠程服務器上打開文件?

[英]How to open a file on a distant server with XML Reader in php?

我有一個巨大的xml文件(~85 Mo),我想用XML Reader打開它(然后我的腳本讀取選定的行)。 我已經將它下載到我的電腦上並且我的腳本正常工作(使用Wamp)。

現在我想在網上做同樣的事情。 服務器登錄是aaa ,密碼是bbb (當然這是一個例子)。

我嘗試了以下聲明:

$xml = new XMLReader();
if ($xml->open('ftp://aaa:bbb@ftp.website.com/myfile.xml')){
    echo 'OK';
}

while($xml->read()){
    // my script here... 
}

我似乎錯了,因為我的網絡瀏覽器指示我的頁面太長而無法加載。 繼續進行的好方法是什么? 還是我錯過了重要的事情?

由於所討論的文件是XML,部分下載它是不明智的,因為它可能會破壞xml結構,使解析器失敗。

你可以得到一個cronjob來偶爾檢索文件,你可以從服務器上的本地位置打開它,或者檢索一次並在本地緩存它以便它可以加快后續請求。

http://davidwalsh.name/increase-php-script-execution-time-limit-ini_set默認執行時間為20秒或30,將其增加到1分鍾並重試

我會使用curl連接到FTP服務器並下載文件。

http://php.net/manual/en/book.curl.php

您可能最好先使用PHP的FTP功能將文件下載到服務器,然后在本地打開該文件。 我不會依賴在XML庫中使用FTP,這樣你就會獲得更多的靈活性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM