●学校情報

講座一覧・募集状況

学習方法

学習サポート

修了生の評価

受講生の横顔

当学院について

入学相談

入学手続

 

●講座情報

技術者養成講座

プログラミング講座

WEB講座

情報処理試験講座

Excel講座

Access講座

 

●関連コラム

関連コラム

関連用語集

 

logo

 

 

関連用語集

PHPのJSONエンコード / デコードとは?配列やオブジェクトをJSON形式で扱う方法

JSON(JavaScript Object Notation)は、データの受け渡しや保存によく使われる軽量なデータフォーマットです。
PHPでは json_encode() で配列やオブジェクトをJSON文字列に変換し、json_decode() で逆にJSON文字列を配列やオブジェクトに変換できます。

json_encode():配列 → JSON文字列

例:

$data = [
  "name" => "山田太郎",
  "age" => 30,
  "email" => "taro@example.com"
];

$json = json_encode($data);
echo $json;

出力結果:

{"name":"山田太郎","age":30,"email":"taro@example.com"}

文字化け防止の設定

$json = json_encode($data, JSON_UNESCAPED_UNICODE);

→ 日本語をエスケープせず、そのまま表示できます。

json_decode():JSON文字列 → 配列 / オブジェクト

例:

$json = '{"name":"山田太郎","age":30}';
$array = json_decode($json, true); // 連想配列として取得
$object = json_decode($json);     // オブジェクトとして取得

アクセス方法:

echo $array["name"];  // 山田太郎
echo $object->age;   // 30

オプション例(json_encode)

  • JSON_PRETTY_PRINT:整形された見やすい形式に
  • JSON_UNESCAPED_UNICODE:日本語のエスケープを防ぐ
  • JSON_UNESCAPED_SLASHES:スラッシュのエスケープを防ぐ

例:

echo json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);

エラーハンドリング

json_decode や json_encode に失敗した場合は、json_last_error() で原因を確認できます。

$data = json_decode("不正なJSON", true);
if (json_last_error() !== JSON_ERROR_NONE) {
  echo "JSONエラー:" . json_last_error_msg();
}

まとめ

  • json_encode():配列やオブジェクトをJSON文字列に変換
  • json_decode():JSON文字列を配列またはオブジェクトに変換
  • JSON_UNESCAPED_UNICODE で日本語の文字化け防止
  • オプションを使って整形や制御が可能
  • json_last_error_msg() でデコード失敗時のエラー確認

PHPで外部APIとやり取りしたり、JavaScriptとの連携をする場合、JSON形式の理解と操作は非常に重要です。
実際にエンコード/デコードを使いながら慣れていきましょう。

 

PHP関連用語集

−−−−−  PHP  −−−−−

PHPの変数とは?基本構文と使い方をわかりやすく解説

PHPの配列とは?複数のデータをまとめて扱う基本構文

PHPの連想配列とは?名前付きのキーでデータを管理する方法

PHPのクラスとは?オブジェクト指向プログラミングの基本を解説

PHPのオブジェクトとは?クラスから作る実体の使い方を解説

PHPのメソッドとは?クラス内の関数の定義と使い方を解説

PHPのプロパティとは?クラスに値を持たせる仕組みを解説

PHPのコンストラクタとは?オブジェクト生成時の初期化処理を解説

PHPの継承とは?クラスを引き継いで再利用する仕組みを解説

PHPのインターフェースとは?クラス設計を柔軟にする仕組みを解説

PHPのトレイト(trait)とは?コードの再利用を実現する仕組みを解説

PHPの名前空間(Namespace)とは?クラスや関数の重複を防ぐ仕組みを解説

PHPのグローバル変数とは?スコープと使い方をわかりやすく解説

PHPのスーパグローバル変数とは?フォーム・セッション処理に欠かせない基本知識

PHPの$_GETとは?URLパラメータを取得する基本と使い方

PHPの$_POSTとは?フォームからのデータを安全に受け取る方法

PHPの$_SESSIONとは?ユーザー情報を一時的に保持する仕組みを解説

PHPの$_COOKIEとは?ユーザー情報をブラウザに保存・取得する方法

PHPの$_SERVERとは?サーバーやリクエスト情報を取得する便利な変数

PHPのincludeとは?外部ファイルを読み込んでコードを分割・再利用

PHPのrequireとは?外部ファイルを確実に読み込むための構文

PHPのエラーハンドリングとは?エラーの種類と対処法をわかりやすく解説

PHPの例外処理(Exception)とは?try-catchで安全なコードを書く方法

PHPのPDO(PHP Data Objects)とは?安全で柔軟なデータベース接続方法

SQLインジェクションとは?Webアプリの重大な脆弱性とその対策

PHPのフォームバリデーションとは?安全な入力処理の基本

PHPのheader()関数とは?HTTPヘッダーを操作する基本と活用法

PHPのJSONエンコード / デコードとは?配列やオブジェクトをJSON形式で扱う方法

HTTPレスポンスコードとは?PHPでステータスを正しく返す方法

Laravel(ララベル)とは?PHPで人気No.1のWebアプリケーションフレームワーク