0
我在閱讀包含URL的CSV文件。我試圖輸出這些URL的結果,但面臨奇怪的問題。 我似乎無法理解,當您嘗試打印第一行的項目時,爲什麼此代碼不打印變量$輸出。閱讀URL時,CURL不返回任何輸出
這是一個包含兩個記錄我的CSV文件:
www.serverfault.com
www.stackoverflow.com
這是我的代碼
<?php
$myfile = fopen("products.csv", "r") or die("Unable to open file!");
while(!feof($myfile))
{
$myline = fgets($myfile);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $myline);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
if($myline == "www.serverfault.com")
{
echo $output;
}
}
?>
請注意,在CSV文件中的第一個記錄是www.serverfault.com它從不打印$輸出。如果我將這條記錄移動到第二行,那麼它會打印$輸出,但是它現在不在第一行打印$ output for www.stackoverflow.com。
發生了什麼事?
你只是假設成功。 curl_exec在失敗時返回布爾值false,打印爲零長度字符串。 'if($ output === false){die(curl_error($ ch)); }'並且不要忘記檢查字符串上的空格(例如換行符)。你的$ myline可能實際上是'www .... com \ n'什麼的。 –
你對這兩點都絕對正確。 $ output是錯誤的,結果發現URL末尾有一個空格。謝謝。請發表您的評論作爲答案,以便我可以接受它。 –