bmorais/database

数据层是数据库的持久抽象组件,PDO为其提供了执行常见操作(如注册、读取、编辑和删除数据)的预定义指令。


README

Maintainer Source Code PHP from Packagist Latest Version Software License Quality Score Total Downloads

数据库是一个持久抽象组件,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联系,而不是使用问题跟踪器。

感谢

鸣谢

贡献

🚧 贡献指南 - 正在更新 🚧

贡献是使开源社区成为一个如此出色的学习、启发和创造之地的原因。您所做出的任何贡献都备受赞赏。

如果您有改进此项目的建议,请fork仓库并创建一个pull request。您也可以简单地打开一个带有适当标签的问题。别忘了给项目加星!再次感谢!

  1. fork项目
  2. 创建您的功能分支(git checkout -b feature/AmazingFeature
  3. 提交您的更改(git commit -m '添加一些AmazingFeature'
  4. 推送到分支(git push origin feature/AmazingFeature
  5. 打开pull request

记住要包括标签,并在上传提交和/或创建问题时遵循常规提交语义版本

返回顶部

致谢

感谢所有为这个项目做出贡献的人,没有你们,这个项目今天就不会存在。

感谢所有为这个项目做出贡献的人,没有你们,这个项目今天就不会存在。

返回顶部

许可

MIT许可(MIT)。请参阅许可文件以获取更多信息。