2013-04-12 50 views
2

我想在遠程服務器上打開文件(例如http://example.org/script.php?param=000001)。 PHP提供了其中幾種方法,我想知道應該採用哪種方法,爲什麼?有沒有優點/缺點?應該用哪個PHP函數打開服務器上的文件?

到目前爲止,我用fopen(),但經過多次讀取操作它發生服務器沒有回答我的請求,fopen()函數失敗。之後我嘗試了file_get_contents(),這也失敗了。

我想這可能是擋住了我的IP服務器,因爲我開了很多流。 這也可能發生在file_get_contents()

我應該使用哪種方法,當我想開一個服務器上的許多文件?

fopen()file_get_contents()有什麼區別?爲什麼服務器應該阻止我的IP? (例如,服務器限制了更多ressources打開的​​文件流的數量,......或FOPEN需求)

+0

通過「一對多」你的意思是「多同時」或「許多,一個又一個」? – Unsigned

+0

您無法使用HTTP在服務器上「打開文件」。您可以發出HTTP請求,服務器將(可能)提供響應。 –

+0

本地文件:您提到的所有方法都很好。遠程文件:[cURL](http://ca2.php.net/manual/en/curl.examples-basic.php)。 – Sammitch

回答

3

file_get_contents()是去

如果你有特殊的HTTP標頭的要求,使用context param

更新的方式:

我看到你編輯的問題一點點。請注意,fopenfile_get_contents之間的差別僅僅在於後者將打開該文件,讀取內容,關閉文件,返回其中第一個只是打開該文件的內容。 開放的過程是一樣的。

+1

+1。如果你想用https使用file_get_contents(),請檢查一下:http://stackoverflow.com/questions/1975461/file-get-contents-with-https –

相關問題