JSON 转 PHP 生成器

JSON 输入

正在加载编辑器…

生成的 PHP

Configuration

PHP 生成选项

输入 JSON 数据以生成 PHP 代码

带 getter/setter 的类

如何将 JSON 转换为 PHP – 分步指南

使用此 JSON 转 PHP 生成器,可从 JSON 示例生成 PHP 类,适用于 Laravel、Symfony 与后端集成。

  1. 步骤 1 – 粘贴 JSON 示例

    • 将具有代表性的 JSON 对象或数组粘贴到左侧编辑器中。
    • 尽量包含嵌套对象、数组和可为 null 的字段,方便正确推断类型。
    • 使用 导入 从文件、URL 或示例数据加载 JSON。
  2. 步骤 2 – 选择 PHP 类选项

    • 若使用 PSR-4 自动加载,请设置根 类名 与命名空间。
    • 决定可选字段如何表示(例如 ?string)。
    • 检查嵌套对象与数组是否映射为独立类与可读的数组类型。
  3. 步骤 3 – 检查生成的代码

    • 确认字段命名、类型推断,以及数组/对象的映射方式是否符合预期。
    • 根据需要调整 根类型名称、空值处理策略以及可选的框架选项。
    • 如果某些字段推断不准确,优化示例 JSON 后重新生成。
  4. 步骤 4 – 在 PHP 中使用类

    • 将类复制到项目中,并确保自动加载配置正确。
    • 将解析后的 JSON 数组映射到 DTO(或使用 hydrator)。
    • 在业务逻辑使用前校验必填字段。
  5. 步骤 5 – 复制或下载

    • 将输出复制到项目中,或下载为文件。
    • 运行格式化/代码检查工具,让代码风格与项目保持一致。
    • 若目标语言需要序列化/解析库,请在项目中添加相应依赖。

快速提示

  • 优先使用带类型的属性(PHP 7.4+),让契约更清晰。
  • DTO 与 ORM 模型分离,避免耦合与副作用。
  • 对外部 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 模型类,具有适当的导入和 Laravel 约定。

PHP 命名空间如何处理?

您可以在选项中指定自定义命名空间。生成器将在生成的 PHP 文件顶部添加适当的命名空间声明。

PHP 类型提示和严格类型如何处理?

生成器使用现代 PHP 类型提示进行方法参数和返回类型,支持 bool、int、float、string 和 array 类型,基于您的 JSON 数据。

JSON 转 PHP 生成器 | JSONSwiss