この記事では主に、PHP で URL をリクエストする 5 つの方法を紹介します。fopen() 関数、file() 関数、file_get_contents() 関数を使用し、curl() を使用してリモート URL データをリクエストし、exec() を使用してコマンドを実行します。以下でラインコマンドを見てみましょう。皆さんのお役に立てれば幸いです。
5つのメソッド:
最初の3つはPHPの基本的なファイル操作関数です
curl()は有効にする必要があり、Linuxの下にインストールする必要があるPHP拡張機能です
exec() Linux を実行します。コマンド ラインの wget コマンドは、リモート ファイル
をダウンロードします。wget コマンドは、ローカル仮想マシン上でリクエスト http://www.php.cn/ をテストするときに成功しませんでしたが、リモート上では機能しました。 DNS 解決の問題を考慮して、IP を直接リクエストし、index.html ファイルを正常にダウンロードしました。
ここでは方法のみを紹介します。メリットとデメリットについては、各方法の機能とデメリットを詳細に理解する必要があります。
1.fopen()関数
$file = fopen("http://www.php.cn/", "r") or die("打开远程文件失败!"); while (!feof($file)) { $line = fgets($file, 1024); //使用正则匹配标题标记 if (preg_match("/<title>(.*)<\/title>/i", $line, $out)) { $title = $out[1]; //将标题标记中的标题字符取出 break; //退出循环,结束远程文件读取 } } fclose($file);
2.file()関数
$lines = file("http://www.php.cn/php-weizijiaocheng-386441.html"); readfile(http://www.php.cn/php-weizijiaocheng-386441.html);
4.curl()関数
$content = file_get_contents(http://www.php.cn/php-weizijiaocheng-386441.html);
5.コマンドラインコマンドを実行します。
$url = "http://www.php.cn/"; $ch = curl_init(); $timeout = 5; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $contents = curl_exec($ch); curl_close($ch);
関連する推奨事項:
以上がPHPでURLをリクエストする方法まとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。