bmorais / database
数据层是数据库的持久抽象组件,PDO为其提供了执行常见操作(如注册、读取、编辑和删除数据)的预定义指令。
Requires
- php: >=7.4
- ext-json: *
- ext-mbstring: *
- ext-pdo: *
Requires (Dev)
- rector/rector: ^0.19.2
- dev-main
- v1.0.83
- v1.0.82
- v1.0.81
- v1.0.80
- v1.0.79
- v1.0.78
- v1.0.77
- v1.0.76
- v1.0.75
- v1.0.74
- v1.0.73
- v1.0.72
- v1.0.71
- v1.0.70
- v1.0.69
- v1.0.68
- v1.0.67
- v1.0.66
- v1.0.65
- v1.0.64
- v1.0.63
- v1.0.62
- v1.0.61
- v1.0.60
- v1.0.59
- v1.0.58
- v1.0.57
- v1.0.56
- v1.0.55
- v1.0.53
- v1.0.52
- v1.0.51
- v1.0.50
- v1.0.49
- 1.0.48
- 1.0.47
- 1.0.46
- 1.0.45
- 1.0.44
- 1.0.43
- 1.0.42
- 1.0.41
- 1.0.40
- 1.0.39
- 1.0.38
- 1.0.37
- 1.0.36
- 1.0.35
- 1.0.34
- 1.0.33
- 1.0.32
- 1.0.31
- v1.0.30
- v1.0.29
- 1.0.28
- 1.0.27
- 1.0.26
- 1.0.25
- 1.0.24
- 1.0.23
- 1.0.22
- 1.0.21
- 1.0.20
- v1.0.19
- v1.0.18
- v1.0.17
- v1.0.16
- v1.0.15
- v1.0.14
- v1.0.13
- v1.0.12
- v1.0.11
- v1.0.10
- v1.0.9
- v1.0.8
- v1.0.7
- v1.0.6
- v1.0.5
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- dev-AthusFelipe-patch-1
- dev-add-license-1
This package is auto-updated.
Last update: 2024-09-09 20:00:11 UTC
README
数据库是一个持久抽象组件,PDO为其提供了执行常见操作(如注册、读取、编辑和删除数据)的预定义指令。
数据库是持久抽象组件,它使用PDO和预定义语句来执行常见操作,如注册、读取、编辑和删除数据。
关于BMorais代码
BMorais代码是一套小型和优化的PHP组件,用于常见任务。由Bruno Morais维护。使用它们,您可以以更少的行数执行常规任务,写得更少,做得多。
BMorais代码是一套小型和优化的PHP组件,用于常见任务。由Bruno Morais维护。使用它们,您可以以更少的行数执行常规任务,写得更少,做得多。
亮点
- 易于设置
- 完整的CRUD抽象
- 创建安全模型
- Composer就绪
- 符合PSR-2规范
安装
通过Composer获取数据库
"bmorais/database": "1.0.*"
或运行
composer require bmorais/database
文档
有关如何使用数据层的详细信息,请参阅组件目录中的示例文件夹中的详细信息
有关如何使用数据库的详细信息,请参阅组件目录中的示例文件夹中的详细信息
连接
要开始使用数据层,您需要连接到数据库(MariaDB / MySql)。有关更多连接,请参阅PHP.net上的PDO连接手册
要开始使用数据层,您需要连接到您的数据库。要查看可能的连接,请访问PHP.net上的PDO连接手册
const CONFIG_DATA_LAYER = [ "driver" => "mysql", "host" => "localhost", "port" => "3306", "dbname" => "database", "username" => "user", "passwd" => "", "options" => [ PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES UTF8, lc_time_names = 'pt_BR'", PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_OBJ, PDO::ATTR_CASE => PDO::CASE_NATURAL, PDO::MYSQL_ATTR_FOUND_ROWS => true, PDO::ATTR_STRINGIFY_FETCHES => true ], "homologation" => "homologacao", "directory_models" => "App\\Models\\", "display_errors_details" => true, ];
您的模型
数据库基于MVC结构,采用Layer Super Type和Active Record设计模式。要使用它,需要创建表的模型并继承数据层。
数据库基于MVC结构,采用Layer Super Type和Active Record设计模式。要使用它,需要创建表的模型并继承CRUD。
<?php class Usuario extends Crud { public function __construct() { $this->database = "nomeBD"; $this->tableName = "USUARIO"; $this->classModel = "AutUserModel"; } /** * @param $codusuario * @return array|null */ public function buscarIdObj($codusuario) { $result = $this->select("*","WHERE CODUSUARIO=?",[$codusuario]); if ($result){ return $result; } else { return null; } } /** * @param $codusuario * @return AutUserModel[] | null */ public function buscarIdModelExample($codusuario) { $result = $this->select("*","WHERE CODUSUARIO=?",[$codusuario], true); if ($result){ return $result; } else { return null; } } /** * @param $codusuario * @return AutUserModel[] | null */ public function buscarIdModelExample2($codusuario) { $sql = "SELECT * FROM AUT_USER AS U WHERE U.CODUSUARIO=?"; $params = array($codusuario); $result = $this->executeSQL($sql,$params); if (!empty($result)){ return $this->getObjModel($result,$this->classModel); } else { return null; } } /** * @param $coduser * @return bool */ public function updateUser($name, $email, $coduser) { $result = $this->update("NAME, EMAIL", array($name, $email), "CODUSER=?"); if ($result){ return true; } else { return false; } } /** * @param $name * @return bool */ public function insertUser($name, $email) { $result = $this->insert("NOME, EMAIL", array($name, $email)); if ($result){ return true; } else { return false; } } }
贡献
有关详细信息,请参阅CONTRIBUTING
支持
安全:如果您发现任何安全相关的问题,请通过电子邮件contato@bmorais.com联系,而不是使用问题跟踪器。
如果您发现任何与安全相关的问题,请通过电子邮件contato@bmorais.com联系,而不是使用问题跟踪器。
感谢
鸣谢
- Bruno Morais(开发者)
- Athus Felipe(开发者)
贡献
🚧 贡献指南 - 正在更新 🚧
贡献是使开源社区成为一个如此出色的学习、启发和创造之地的原因。您所做出的任何贡献都备受赞赏。
如果您有改进此项目的建议,请fork仓库并创建一个pull request。您也可以简单地打开一个带有适当标签的问题。别忘了给项目加星!再次感谢!
- fork项目
- 创建您的功能分支(
git checkout -b feature/AmazingFeature
) - 提交您的更改(
git commit -m '添加一些AmazingFeature'
) - 推送到分支(
git push origin feature/AmazingFeature
) - 打开pull request
记住要包括标签,并在上传提交和/或创建问题时遵循常规提交和语义版本。
(返回顶部)
致谢
感谢所有为这个项目做出贡献的人,没有你们,这个项目今天就不会存在。
感谢所有为这个项目做出贡献的人,没有你们,这个项目今天就不会存在。
(返回顶部)
许可
MIT许可(MIT)。请参阅许可文件以获取更多信息。