カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

cURL(client for URL)

この記事は最終更新日から1年以上経過しています。

cURL(カール)は、HTTP・HTTPSやFTPなど様々なプロトコルを用いてデータを転送するライブラリとコマンドラインツールです。
最近のレンタルサーバーのPHPにはライブラリがデフォルトで組み込んであることもあります。

HTTPでデータを取得する

まず取得したいURLを設定

$url = "http://www.example.jp";

cURLを初期化し、ハンドルを取得します。

$ch = curl_init();

こちらにいきなりURLを入れてcurl_init($url)としても構いません。
ここではオプション設定を使用してURLを設定します。

curl_setopt($ch, CURLOPT_URL, $url);

メソッドの設定。GETを指定します。

curl_setopt($ch, CURLOPT_HTTPGET, true);

最後に取得したデータを文字列として取得するよう設定します。

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

実行します。

$http_str = curl_exec($ch);

処理が終わったらハンドルを指定して処理を閉じます。

curl_close($ch);

書き出してみましょう。

echo $http_str;

HTMLソースが文字列として出力されます。

POST送信の場合はcurl_setopt($ch, CURLOPT_HTTPGET, true)の部分を次のようにします。

curl_setopt($ch, CURLOPT_POST, true);

また、パラメーターを与えるときはCURLOPT_POSTFIELDSオプションを設定します。

$param = ["id" => "test"];
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($param));

他にも様々なプロトコルでのデータ取得が可能なので色々試してみてください。

公式マニュアル:
PHP: cURL 関数 – Manual
参考URL:
PHP cURLの色々な使い方

この記事がお役に立ちましたらシェアお願いします
644 views

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です