cozy / database
一系列数据库工具。
v0.1.4
2018-11-21 06:31 UTC
Requires
- php: >=7.1.0
- ext-pdo: *
Requires (Dev)
- mockery/mockery: ~0.9
- phpunit/phpunit: ~5.4
- squizlabs/php_codesniffer: ^2.3
This package is not auto-updated.
Last update: 2024-09-15 03:34:29 UTC
README
PHP 7.1+的数据库工具包,封装PDO实例以简化并提高其功能,同时允许良好的安全实践并提供可表达性查询构建器。此库也是Cozy PHP框架的组件。
安装
通过Composer
$ composer require cozy/database
用法
单一连接到关系数据库
use \Cozy\Database\Relational\Connection; $db = new Connection('mysql:host=localhost;port=3306;dbname=test', 'user', 'password'); $account = $db ->prepare('SELECT * FROM schema.accounts WHERE id = :id') ->bindValue(':id', '6b70a1f7-2a41-4da3-9fdb-f8b60273dec1', 'string') ->fetchAsObject(Account::class);
关系数据库连接池
use \Cozy\Database\Relational\ConnectionPool; use \Cozy\Database\Relational\Connection; $db_pool = new ConnectionPool(ConnectionPool::SELECTION_RANDOM); foreach ($settings['database']['master'] as $database_info) { $db_pool->addConnection(Connection::fromArray($database_info), 'master'); } foreach ($settings['database']['slave'] as $database_info) { $db_pool->addConnection(Connection::fromArray($database_info), 'slave'); } $account = $db_pool->getConnection('slave') ->prepare('SELECT * FROM schema.accounts WHERE id = :id') ->bindValue(':id', '6b70a1f7-2a41-4da3-9fdb-f8b60273dec1', 'string') ->fetchAsObject(Account::class);
变更日志
有关最近更改的更多信息,请参阅CHANGELOG。
测试
$ composer test
贡献
请参阅CONTRIBUTING和CODE_OF_CONDUCT以获取详细信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件info@nestorpicado.com而不是使用问题跟踪器。
鸣谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。