定制 losthost/db 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

losthost/db

最新稳定版本:v3.5.0-beta

Composer 安装命令:

composer require losthost/db

包简介

Database access with so called DB Objects (descendants of class DBObject)

关键字:

README 文档

README

Database access with so called DB Objects (descendants of class DBObject) that mirror data table structure to your project

DB - making DB connection

There is an example class DBChildObjectExample that is a descendant of DBObject. Before using DBObject descendant you have to open DB connection with and make some stuff:

    DB::connect($db_host, $db_user, $db_pass, $db_name, $db_prefix='', $db_encoding='utf8mb4');
    DB::setClassNamespace("\\your\\namespace\\");   /* use \\ at the begining and the end of namespace */
    DB::checkDataStructure("yourClassOne, yourClassTwo, andSoOn", true);

After that you can access a table with your DBObject descendant.

DBObject - accessing data

Some useful operations:

    // Creating record:
    
    $new = new DBChildObjectExample();
    $new->name = "test";
    $new->description = "A test record";
    $new->write();
    $new_record_id = $new->id;

    // Accessing record:

    $existing = new DBChildObjectExample("id = ?", $new_record_id);

    if ($existing->isNew()) {

        throw new \Exception('Object not found');

    } else {
        // Modify object:

        $existing->description = 'New description';
        $existing->write();
    }

Special stuff

If you need some special processing (like checking or filling data) you may override DBObject::fetch(...) and DBObject::write() methods.

TODO

  • добавить параметр формата к DBObject->asString();

Using with AI

PROMPT.md contains the description of the lib for AI-agents. Copy its content to agent's prompt and ask it to help you in developing your app.

Epilogue

That's it. Have fun.

统计信息

  • 总下载量: 208
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 15
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-07-07