2009-12-06 52 views
0

我想知道是否有可能得到一個遠程FLV文件,並把它「流」使用PHP和exec函數。我在我的環境中「捲曲」,所以我想要類似於:使用PHP獲取遠程FLV和捲曲

exec ('curl http://myhosts.com/myflv.flv', $out); 
print $out; 

問題是$ out返回爲數組;我想輸出curl返回的'raw'流。

回答

1

你應該能夠使用fpassthru()的是,雖然它很可能是最好只將用戶重定向到正確的URL來代替。

$fp = fopen('http://myhosts.com/myflv.flv', 'rb'); 
fpassthru($fp); 

或重定向:

header('Location: http://myhosts.com/myflv.flv'); 

試想想起來了,你甚至應該能夠使用readfile()

readfile('http://myhosts.com/myflv.flv'); 

無論如何,如果你可以簡單地將用戶重定向,去做。它的效率更高。

+0

好了,第一個選項似乎工作。我的下一個交易是PHP執行最大超時;如果我的flv真的很大,php顯然會超時。你會想到另一種選擇嗎? – Disco 2009-12-06 16:06:40

+0

首先,當你說「我的flv」我假設你還在談論遠程文件。如果文件可以在本地訪問,那麼您絕對可以在本地訪問它。其次,在使用'Location'頭仍然是喜歡的方式重定向,這是我的理解是最大的執行超時不能阻止一個PHP函數的執行,因此它不能阻止'ReadFile的()'或'fpassthru()' – 2009-12-06 16:18:33

+0

的FLV的是另一臺服務器上託管的,我要訪問它們是直通網...會嘗試你的建議的唯一途徑。謝謝。 – Disco 2009-12-06 16:57:33