schneidermanuel/dynalinker

简单的ORM和.ENV库

1.0.16 2023-11-26 14:57 UTC

This package is auto-updated.

Last update: 2024-09-26 16:46:16 UTC


README

这是一个用于创建简单PHP应用程序的最简库。

特性

  • 最简ORM
  • 环境变量
  • 调用映射

基本用法

获取单例DynaLinker对象并使用其函数生成所有对象。支持缓存。

$dynalinker = Dynalinker::Get();

最简ORM

仅支持MySQL和MariaDB

创建一个实体类,并使用Entity属性进行注解,提供表名作为参数。注解每个属性使用persist并提供列名作为属性。没有persist属性的属性不会存储在数据库中。将PrimaryKey属性放在确切的一个属性上以标记为主键。

#[Entity("user")]
class TestEntity
{
    #[Persist("userId")]
    #[PrimaryKey]
    public $testProperty;

    #[Persist("userName")]
    public $name;
    #[Persist("pwHash")]
    public $hash;
}

为实体生成一个存储对象。每个存储对象只负责一个实体。它提供了基本的CRUD操作。

$store = $dynalinker->CreateStore(TestEntity::class);
$entity = new TestEntity();
$entity->name = "Test";
$entity->hash = "FJAF";
$id = $store->SaveOrUpdate($entity);
var_dump($store->LoadById($id));

环境变量

一旦调用DynaLinker::Get();,位于与composer文件夹同一目录的.env文件中的所有变量都将可用在$_ENV超级全局变量中。

调用映射

即将完成

许可证

MIT许可证。