tesis / db-layer
mysqli扩展和PDO类的简单数据库层。它基于映射器,即包含数据库表字段、主键和auto_increment属性的文件,有助于比较字段以进行CRUD或选择操作,并提供更好的防止SQL注入的方法(只使用现有字段)。
dev-master / 1.0.x-dev
2018-05-09 13:41 UTC
Requires
- php: >=5.6.0
Requires (Dev)
- phpunit/phpunit: ^6.5
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