JSON 轉 PHP 產生器

JSON 輸入

正在載入編輯器…

生成的 PHP

Configuration

PHP 產生選項

輸入 JSON 資料以產生 PHP 程式碼

包含 getter 與 setter 的類別

如何將 JSON 轉換為 PHP – 步驟指南

使用此 JSON 轉 PHP 產生器,可從 JSON 範例產生 PHP class,適合 Laravel、Symfony 與後端整合。

  1. 步驟 1 – 貼上 JSON 範例

    • 將具有代表性的 JSON 物件或陣列貼到左側編輯器。
    • 盡量包含巢狀物件、陣列與可為 null 的欄位,方便正確推斷型別。
    • 使用 匯入 從檔案、URL 或示例資料載入 JSON。
  2. 步驟 2 – 選擇 PHP class 選項

    • 若使用 PSR-4 自動載入,請設定根 Class Name 與命名空間。
    • 決定可選欄位如何表示(例如 ?string)。
    • 確認巢狀物件與陣列是否對應到獨立 class 與可讀的陣列型別。
  3. 步驟 3 – 檢查產生的程式碼

    • 確認欄位命名、型別推斷,以及陣列/物件的對應方式是否符合預期。
    • 依需求調整 根型別名稱、null 處理策略與可選的框架選項。
    • 若某些欄位推斷不準確,優化 JSON 範例後重新產生。
  4. 步驟 4 – 在 PHP 中使用 class

    • 將 class 複製到專案中,並確保 autoload 設定正確。
    • 把解析後的 JSON 陣列映射成 DTO(或使用 hydrator)。
    • 在進入商業邏輯前驗證必填欄位。
  5. 步驟 5 – 複製或下載

    • 將輸出複製到專案中,或下載成檔案。
    • 執行格式化/程式碼檢查工具,讓風格與專案一致。
    • 若目標語言需要序列化/解析函式庫,請在專案中加入相依套件。

快速提示

  • 優先使用 typed properties(PHP 7.4+),讓契約更清楚。
  • 讓 DTO 與 ORM model 分離,避免耦合。
  • 對外部 JSON 建議先用 JSON Schema 驗證。
範例輸出(簡化)
// JSON 輸入
{
  "id": 123,
  "name": "Maeve Winters",
  "email": "[email protected]",
  "active": true,
  "roles": ["admin", "editor"],
  "metadata": { "plan": "pro" },
  "createdAt": "2024-03-01T10:15:00Z",
  "score": 99.5,
  "notes": null
}

// 產生的 PHP DTO(簡化)
final class Metadata {
  public string $plan;
}

final class Root {
  public int $id;
  public string $name;
  public ?string $email;
  public bool $active;
  /** @var string[] */
  public array $roles;
  public Metadata $metadata;
  public string $createdAt;
  public float $score;
  public mixed $notes;
}

相關 JSON 與 PHP 工具

探索更多可與本 JSON 轉 PHP 產生器搭配使用的 JSON 與 Schema 工具。

常見問題

支援哪些 PHP 特性?

產生器會建立具有型別提示(PHP 7.4+)、getter/setter、建構子的 PHP 類別,並支援多種框架,例如 Laravel Eloquent 模型與一般 PHP 類別。

可以產生 Laravel Eloquent 模型嗎?

可以!選擇「Laravel」框架可產生繼承 Model 的 Eloquent 模型類別,並包含正確 imports 與 Laravel 慣例。

PHP namespace 如何處理?

你可以在選項中指定 namespace,產生器會在 PHP 檔案頂部加入對應的 namespace 宣告。

PHP 型別提示與 strict typing 呢?

產生器使用現代 PHP 型別提示,為方法參數與回傳型別提供 bool、int、float、string、array 等對應,依據你的 JSON 資料型別推導。

JSON 轉 PHP 產生器 | JSONSwiss