2021/12/19
Web上には API を使ってWebサービスのデータを取得し利用することができるサービス(WebAPI)があります。
- Yahoo!デベロッパーネットワーク
- Rakuten Developers
- Amazonアソシエイト
- リクルートWebサービス
PHP プログラムで WebAPI を呼び出すやり方がわかると、Webサービスが提供しているデータを取得し、自分のWebサイトで利用することができます。
今回は PHP で WebAPI の呼び出しをやってみます。
INDEX
1)利用する WebAPI を選定
今回利用させていただく WebAPI ですが、「Visual Basic 中学校」の「すぐ呼び出し可能なWebAPIサンプル」を選定させていただきました。
すぐ呼び出し可能なWebAPIのサンプル|Visual Basic 中学校
上記のページにあるAPI仕様を確認すると、人物の新規登録や更新、また削除までできるみたいですね。
一覧取得から特定の人物の取得、新規登録、削除を一通りやってみましょう。
WebAPI でのアクセスは curl
を使うのが一般的ですが、この記事では file_get_contents 関数を使ってWebAPI にアクセスします。
file_get_contents を使って JSON の送信についての記事は以下をご参照ください。
file_get_contents を使って JSON を送信
JSON はよく API などを使ってデータをやり取りする際に使われますので、この機会にマスターしましょう。
2)PHPでWebAPIの呼び出し(一覧取得)
とりあえず、素の PHP で書いていきます。
Laravel のフレームワークの場合、 public 以下に素の PHP を置くといいです。
ファイル名 api_sample1.php で作成します。
http://localhost/api_sample1.php(もしくは http://127.0.0.1/api_sample1.php) にアクセスしてレコードの一覧を表示します。
上記のように表示されればOK。
3)PHPでWebAPIの呼び出し(特定のレコードを取得)
ファイル名 api_sample2.php で作成します。
http://localhost/api_sample2.php(もしくは http://127.0.0.1/api_sample2.php) にアクセスして特定の人物(※織田信長)が表示されたか確認します。
上記のように表示されればOK。
4)PHPでWebAPIの呼び出し(新規登録)
ファイル名 api_sample3.php で作成します。
http://localhost/api_sample3.php にアクセスしてレコードを登録します。
次にJSON形式で送ったデータ(※坂本龍馬)がちゃんと追加されたか確認してみます。
http://localhost/api_sample1.php にアクセス。
上記のように表示されればOKです。
5)PHPでWebAPIの呼び出し(削除)
ファイル名 api_sample4.php で作成します。
http://localhost/api_sample4.php にアクセスしてレコードを削除します。
次にJSON形式で送ったデータ(※坂本龍馬)がちゃんと削除されたか確認してみます。
http://localhost/api_sample1.php にアクセス。
上記のように表示されればOKです。
以上です。

仕事で Laravel を使っています。気づいたことや新しい発見など情報を発信していきます。問い合わせはこちら。