JSON から PHP
JSON から fromArray() 付きの型付き PHP クラスを生成
JSON を貼り付けるか例を読み込むと、PHP のコードを生成します。
JSON to PHP が生成するもの
JSON to PHP は API レスポンスや任意の JSON サンプルを PHP のクラスに変換します。コンストラクタープロモーションでは public の型付きコンストラクター引数(PHP 8.0 以降)を出力し、public プロパティ形式では型付きプロパティを出力して fromArray() で値を設定します。必須の引数は省略可能な引数より前に置かれ、省略可能な値の既定値は null になり、ネイティブ型では表せない配列の要素は PHPDoc の list<Type> アノテーションで記述します。
使い方
- 1.JSON を貼り付けるか、.json ファイルをアップロードまたはドロップするか、例を読み込みます。
- 2.ルートクラス名と、必要に応じて App\Models のような名前空間を設定します。
- 3.クラスの形式と、型付きプロパティや PHPDoc を出力するかどうかを選びます。
- 4.注意を読んでから、コードをコピーするか Models.php をダウンロードします。json_decode($json, true) でデコードし、Root::fromArray($data) を呼び出します。
型の推論方法
- •最初の要素だけでなく配列のすべての要素を確認し、同じ配列内のオブジェクトは統合します。
- •一部のオブジェクトにないキーは省略可能、ときどき null になるキーは null 許容になります。この 2 つは区別して扱います。
- •同じ位置にある 1 と 2.5 は小数に拡張され、それ以外の混在は報告されます。
- •空の配列や常に null の値には型の手がかりがないため、汎用的な型を使用し、その理由を注意で説明します。
- •型の対応:string → string、整数 → int、小数 → float、真偽値 → bool、配列 → list<T> の PHPDoc 付き array、オブジェクト → class、null あり → ?T、混在したスカラー → string|int などの共用体、不明 → mixed。
制限とプライバシー
サンプルはある時点でのデータの形を示すだけで、API の完全な仕様ではありません。コードを使う前に、省略可能なフィールド、汎用的な型、数値の幅を確認してください。入力は 5 MB、入れ子 256 階層までです。2 MB 以上の場合は「生成」ボタンを押すまで生成されません。処理はすべてブラウザー内で行われ、JSON がアップロードされることはありません。JSON_BIGINT_AS_STRING を使わない限り json_decode は PHP_INT_MAX を超える整数を float に変換するため、そのような整数は mixed 型になります。
