2010-03-22 64 views
1

答:使用curl實現的......如何在外部項目中使用Wordpress的http.php?

$file = "http://abc.com/data//output.txt"; 
$ch = curl_init($file); 
$fp = @fopen("out.txt", "w"); 
curl_setopt($ch, CURLOPT_FILE, $fp); 
curl_setopt($ch, CURLOPT_HEADER, 0); 
curl_exec($ch); 
curl_close($ch); 
fclose($fp); 
$file = "out.txt"; 
$fp = fopen($file, "r"); 

我想從託管這反過來將在數據庫中插入另一臺服務器上的管道分隔文本文件解析的數據。我的主機(1and1)已禁用allow_url_fopen in php.ini我想。

錯誤消息:

Warning: fopen() [function.fopen]: URL file-access is disabled in the server configuration in 

代碼:

<? 


// make sure curl is installed 
if (function_exists('curl_init')) { 
    // initialize a new curl resource 
    $ch = curl_init(); 

    // set the url to fetch 
    curl_setopt($ch, CURLOPT_URL, 'http://abc.com/data/output.txt'); 

    // don't give me the headers just the content 
    curl_setopt($ch, CURLOPT_HEADER, 0); 

    // return the value instead of printing the response to browser 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

    // use a user agent to mimic a browser 
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0'); 

    $content = curl_exec($ch); 

    // remember to always close the session and free all resources 
    curl_close($ch); 
} else { 
    // curl library is not installed so we better use something else 
} 

//$contents = fread ($fd,filesize ($filename)); 

//fclose ($fd); 
$delimiter = "|"; 
$splitcontents = explode($delimiter, $contents); 
$counter = ""; 
?> 
<font color="blue" face="arial" size="4">Complete File Contents</font> 
<hr> 
<? 
echo $contents; 
?> 

<br><br> 
<font color="blue" face="arial" size="4">Split File Contents</font> 
<hr> 
<? 
foreach ($splitcontents as $color) 
{ 

$counter = $counter+1; 
echo "<b>Split $counter: </b> $colorn<br>"; 
} 

?> 

的WordPress有這個很酷的http.php文件。有沒有更好的方法來做到這一點?如果不是,我該如何使用http.php來完成這項任務?謝謝你們..

回答

1

嘗試file_get_contents(),或CURL庫。

本文有一些示例:Reading a Remote File Using PHP

+0

非常感謝。用捲曲替換,但沒有內容顯示。你能否調試這個新的代碼?再次感謝... – ThinkCode

+0

使用捲曲實現。非常感謝! – ThinkCode

+0

我不知道爲什麼你不會得到任何結果...你有沒有嘗試像谷歌一樣的網頁?你確定沒有發生錯誤嗎?您可能需要檢查錯誤日誌以確保CURL正常工作。 –

相關問題