私のページが長年働いていたので、何か変わってしまいました。 CURLコードを持つ関数は、他の4回も呼ばれてhtmlページを取得して正常に動作します。しかし、それはちょっと前にCSVファイルである1つの呼び出しで作業を終了します。ブラウザにURLを入力すると、ファイルが正しくダウンロードされ、データとURLが正しいことがわかります。私はPHP 5.6に切り替えましたが、それ以降はすべてがうまくいったと思いますが、私は100%肯定的ではありません。私はアプリのこの部分をテストすることができなかった可能性がありますが、私はそれを疑う。私はグーグルで、SOのアーカイブを見て、役に立つ提案がある間は何も働かない。このコードは元々働いていました。以下のコードにいくつかのテストエコーラインを追加しました。私は自分の電子メールアドレスを隠すためのコードを編集し、ダウンロードしたサイトの1つに追加されたユーザーエージェントにURLを付けます。私のPHP CURLコードは、何年も働いてからCSVファイルで作業を終了しました
function read_url($url){
// create curl resource
$ch = curl_init();
// set url
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_USERAGENT,'weatherapp/1.0 (www.mydomain.com, [email protected])');
//return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// $output contains the output string
$output = curl_exec($ch);
if(curl_errno($ch)){
echo "<!-- curl_error($ch) -->";
}
// close curl resource to free up system resources
curl_close($ch);
echo "**** read $url *********<br>";
echo $output;
echo "******** end of output ***********<br>";
return $output;
}
テスト出力では、URLが有効で出力が確認できます。
注:私のブラウザでは、以下のURLからファイルがダウンロードされます。
で、出力は空白になっています。
もう一度、このコードは長い間うまくいきました。可能性に開いている
これは私が探して、このコマンド
curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false;
を追加することについて話しましたしかし、それは助けにはならなかったこれに対処質問を見つけ、PHP5.6の問題です。私も真実を試しました。
私はfollowlocationをtrueに追加しました。これらの人たちが毎回自分のURLを変えてナッツを動かすのは、大きな変化です。私は自分のコードがこれらのリンクに従うことを嬉しく思っています。ありがとうございました! –