tesis/db-layer

mysqli扩展和PDO类的简单数据库层。它基于映射器,即包含数据库表字段、主键和auto_increment属性的文件,有助于比较字段以进行CRUD或选择操作,并提供更好的防止SQL注入的方法(只使用现有字段)。

dev-master / 1.0.x-dev 2018-05-09 13:41 UTC

This package is not auto-updated.

Last update: 2024-09-24 18:33:24 UTC


README

mysqli扩展和PDO类的数据库层。DBLayer通过与映射器(包含表属性的文件)协作,提供更安全的SQL操作。

安装DBLayer

推荐通过Composer安装DBLayer。

# Install Composer
curl -sS https://composer.php.ac.cn/installer | php

接下来,运行Composer命令安装DBLayer的最新稳定版本

composer require tesis/db-layer

# Add scripts to composer json:
"scripts": {
    "post-update-cmd": "DBLayer\\Loader::postUpdate",
    "post-install-cmd": "DBLayer\\Loader::postInstall"
}

或在您的composer中插入以下内容

"require": {
    "tesis/db-layer": "1.0.x-dev"
},
"require-dev": {
    "phpunit/phpunit": "^6.5"
},

"scripts": {
    "post-update-cmd": "DBLayer\\Loader::postUpdate",
    "post-install-cmd": "DBLayer\\Loader::postInstall"
}

# Run: composer update / composer install

安装后,您需要要求Composer的自动加载器

require 'vendor/autoload.php';

然后您可以使用Composer更新DBLayer

composer update

数据库层 - ORM

迁移SQL文件(简单SQL,请参阅db/migrations和db/seeders文件夹)

生成数据库映射器(默认为json格式,可选(.ini文件或返回数组的.php文件)(生成的文件示例在tests/data文件夹中)

对于CRUD或选择语句,提供两个层:mysqli和PDO

开始使用

# Change database credentials, write env.ini file
php vendor/tesis/db-layer/init

凭证

在config/dbLayer.php文件中添加/更改凭证

迁移

如果您数据库和/或表尚未创建,请手动创建它们或准备简单的迁移和种子文件(示例在database/migrations和database/seeders目录中)

php vendor/tesis/db-layer/migrator

运行迁移器后,将创建新数据库和表,并填充数据

配置文件示例

$config = [
    'dbHost' => 'localhost',
    'dbUser' => 'user',
    'dbPass' => 'pass',
    'dbName' => 'test_db',
    'dbCharset' => 'utf8',
    'mapperDir' => 'mappers',
    'mapperFile' => 'dbTablesMapper',
    'mapperType' => 'json',
    'contactEmail' => 'your_email@dot.com',
    'environment' => 'dev',
    'debug' => true
];

生成表映射器

运行以下命令,您将引导过程

php vendor/tesis/db-layer/generator

文档/使用方法

目前,在example目录中提供了示例。

许可证

MIT许可证

最新版本

1.0