ホームページ >バックエンド開発 >PHPチュートリアル >使用可能なソケット インスタンスを見つける

使用可能なソケット インスタンスを見つける

WBOY
WBOYオリジナル
2016-06-23 14:18:55952ブラウズ

ソケット インスタンス

file_get_contents を使用してリモート ファイルを取得すると、エラーが返され、接続できません。
オンラインで誰かがソケットを使用できると言いました。これまで使用したことがありませんでしたが、検索した結果、すべてあなたが私のものを転送し、私があなたのものを転送したことがわかりました。初めてのユーザーにとっては扱いにくいものです。
私の現在のニーズは、他の人の Web サイトからコンテンツをコピーする泥棒プログラムを作成することです。

ソケットを紹介する記事にはすべて「サーバープログラム」と「クライアントプログラム」について言及されています。
理解できないことがあります:
サーバープログラムはどこにありますか?訪問した Web サイトのサーバー上にありますか?それなら、私には関係ないはずです(書く必要はありません)。クライアントプログラムだけを書く必要がありますか?

www.baidu.com を例としてハードコーディングしてください。ありがとうございます。 !

ディスカッションへの返信 (解決策)

ソケットは置かれている場所ではありませんが、リッスンする側はサーバーであり、接続を要求する側はクライアントです

単に物事を取得したい場合、ソケットは難しすぎる必要はありません。curl を使用してください。このフォーラムを検索してください。

file_get_contents のような関連投稿がたくさんあります。うまくいきませんか、何か問題が発生しました。

file_get_contents が機能しません。問題が発生しました。

一定時間が経過しても接続側が正しく応答しなかったか、接続先ホストが応答しなかったため、接続試行は失敗しました

相手側が制限を課している可能性があるため、curl を使用してみてください。

ソケットは置かれた場所に配置されるのではなく、リッスンする側がサーバーであり、接続を要求する側がクライアントです

何かを取得したいだけの場合、ソケットは難しすぎるため、必要ありません。 curlを使って検索してみてください 今回は関連記事がたくさんあります
それが使えればソケットメソッドを考える必要はありません



// 新しいcURLリソースを作成します
$ch =curl_init();

// URL と対応するオプションを設定します
curl_setopt ($ch, CURLOPT_URL, "http://bbs.csdn.net/topics/380240079");

// URL を取得してブラウザに渡します
var_dump (curl_exec($ch));

// cURL リソースを閉じ、システム リソースを解放します
curl_close($ch);


n 個のリンクを変更すると、すべて false が返されます。試しに友人に送ってみたところ、彼の側は true を返したと言いました

それは可能ですが、あなたのものではありませんか? cURL リソース

$ch =curl_init()

// URL と対応するオプションを設定します
curl_setopt ($ch, CURLOPT_URL, "http://bbs.csdn.net/topics/380240079");
curl_setopt($ch , CURLOPT_HEADER, 0);

// URL を取得してブラウザに渡します
var_dump( curl_exec($ch));

// cURL リソースを閉じ、システム リソースを解放します

いいえ。

お兄さん、試してみてくれませんか?

curl を介して Web ページを取得します。

コードを使って出てきます

コードを使って出てきます

昨日家で試してみました。奇妙な

見つけて試してみてください:

function read_file($url){  $r=@file_get_contents($url);  if(!$r){    $ch = curl_init();       curl_setopt($ch, CURLOPT_URL, $url);            //设置访问的url地址       //curl_setopt($ch,CURLOPT_HEADER,1);            //是否显示头部信息       curl_setopt($ch, CURLOPT_TIMEOUT, 5);           //设置超时       curl_setopt($ch, CURLOPT_USERAGENT, _USERAGENT_);   //用户访问代理 User-Agent       curl_setopt($ch, CURLOPT_REFERER,_REFERER_);        //设置 referer       curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);      //跟踪301       curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);        //返回结果       $r = curl_exec($ch);    curl_close($ch);  }  return $r;   }

動作しない場合は、curl 拡張機能が有効になっていないことを意味しますが、file_get_contents でさえ URL にアクセスできない場合は、curl が有効になっていない可能性があります


動作しない場合, それは、curl 拡張機能が有効になっていないことを意味します 有効ですが、file_get_contents でも URL にアクセスできない場合は、curl が有効になっていない可能性があります
拡張機能は有効になっています

社内で試してみましたが、file_get_contents とは関係なく、curl は動作しませんでした。自宅で試すことができます。インターネットと関係があるのか​​分かりませんが?

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。