2023年内に個人開発でサービスをローンチしたい人のブログ

なんちゃってphperですが、「2023年内に個人開発でサービスをローンチする」ことを目標にがんばります!とはいっても、ブログはノンジャンルです。

PHP ネイティブのPHPでjsonを取得する処理

ネイティブのPHPjsonを取得する処理

おはようございます。
ネイティブのPHPでPOSTされたjsonを取得する方法について備忘録です。
ネイティブのPHPって表現の仕方があっているかわかりませんが、普段フレームワークを用いてAPI実装をすることが多いので、フレームワークを用いずに、どのように取得するかを調べました。

書き方

  • Content-Type application/json でPOSTされたデータをPHP側で取得するとして、
    以下の処理でデータを取得できます。
// JSON取得
$json = file_get_contents('php://input');
$data = json_decode($json, true)

解説

  • php://input はリクエストされたbodyの生のデータを取得することができます。
  • file_get_contents()は指定したファイル、URLの内容をすべて文字列で読み込む関数です。
  • 上記の二つを組み合わせることで、リクエストされたbodyの生データを文字列にして取得できます。
  • そしてjson_decode()jsonをデコードして連想配列にします。

参考にさせていただいたサイト


あとがき

普段フレームワークでよしなにやってくれるので、いざネイティブで書き始めると、戸惑う事ばかりです。基礎は大事ですね。。

読んでいただきありがとうございました。 よろしくお願いいたします。