baraja-core/entity-to-typescript

此包的最新版本(v1.0.1)没有提供许可证信息。

将任何PHP实体转换为TypeScript。

v1.0.1 2023-02-22 09:00 UTC

This package is auto-updated.

Last update: 2024-08-25 09:37:29 UTC


README

简单转换PHP模型实体到TypeScript的工具。

  • 无Composer包依赖
  • 原生支持PHP属性类型和注解
  • 递归分析依赖实体包括数组
  • 原生支持TypeScript Record如Record<number, Record<boolean, Record<string, number>>>
  • 扫描多个实体时具有独特接口名称

如何使用

// create service instance (no dependency needed!)
$service = new EntityToTypescript();

// analyze your service and write dependencies to bag
$bag = new DependencyBag();
$bag = $service->process(SampleEntity::class, $bag);

// render TypeScript to string
echo $service->render($bag);

在徽章中存储依赖项的原则

当扫描传递的PHP实体时,依赖实体也会递归扫描,包括注解和复合类型,如PHP数组。所有扫描实体的信息都存储在所谓的徽章中的公共位置,确保所有生成的接口名称都是唯一的。

如果您需要为多个实体或整个项目生成TypeScript定义,只需将相同的徽章实例传递给多个生成即可。