curlとは
cURLとは、HTTPリクエストをすることにより、外部サイトの情報を取得することができる関数です。
https://www.sejuku.net/blog/26754
curl_init()
cURLのセッションを初期化し、返り値にcURLハンドルを返します。
curl_init ([ string $url = NULL ] )
curl_setopt()
cURLの転送用オプションを設定します。返り値にはboolean型の値を返します。
curl_setopt ( resource $cURLハンドル , int $オプション , mixed $値 )
curl_exec()
cURLのセッションの実行時に使用します。この関数はセッションの初期化、オプション設定後に使用する必要があります。
curl_exec ( resource $cURLハンドル )
curl_close()
cURLのセッションを閉じるときに使用します。
curl_close ( resource $cURLハンドル )
基本的な使い方
curl.php
<?php
$url = "https://www.aaa.com/";
//cURLセッションを初期化する
$ch = curl_init();
//URLとオプションを指定する
curl_setopt($ch, CURLOPT_URL, $url);//取得するURL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);//curl_exec()の返り値を文字列で返す。通常はデータを直接出力。
//URLの情報を取得し、ブラウザに渡す
$res = curl_exec($ch);
//結果を表示する
var_dump($res);
//セッションを終了する
curl_close($conn);
?>
このコードを実行すると、ブラウザに指定したURLを表示する。
cURL関数はhttpのほかにhttpsによるSSL/TSL認証にも対応。
【実例】ビットコイン価格を取得し、表示する
curl;.php
<?php
//ビットコインの各種情報
$url = "https://api.bitflyer.jp/v1/ticker?product_code=BTC_JPY";
//curlセッション初期化
$ch = curl_init();
//URLとオプションを指定する
curl_setopt($ch, CURLOPT_URL, $url);//取得するURL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);//curl_exec()の返り値を文字列で返す
//URLの情報を取得
$response = curl_exec($ch);
$result = json_decode($response);//取得したURLのJSONコードをデコードし$resultに代入
echo '現在のBTC価格は:' . number_format($result->ltp) . '円';//ビットコイン価格を表示
//セッション終了
curl_close($ch);
?>
「ltp」項目の右に表示されている数字が、bitFlyerでの現在のビットコイン価格
$result->ltpでビットコイン価格取得
number_format()
パラメータが一つの場合、千位毎にカンマ(,)を追加する
JSONとは
JSONとは、JavaScript Object Notationの略でデータフォーマットの一種。
JSON形式のデータ
{
"name" : "JSON",
"age" : "30",
"gender" : "male",
}
波括弧で括り、その中がデータ。
コロン(:)の左側が「key」、右側が「value」