bogro/tools-database

v0.1.2 2018-03-31 16:07 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:30:59 UTC


README

一个轻量级、简单且面向对象的PHP工具。

关于

"工具数据库"是一个为开发者提供帮助的工具。它轻量、简单、易于理解,且面向对象。此工具可连接您的PHP应用程序和MySQL数据库。使用其不同方法,您无需再编写MySQL代码来执行查询,"Tools Database"将为您完成。

特性

  • 支持注入
  • 使用PDO
  • MVC结构
  • 全面管理数据库交互动作

先决条件/要求

  • PHP 5.3最小版本

安装

在您的CMD或终端中执行以下命令进行安装

composer require bogro/tools-database

演示

演示文件位于Demo/文件夹中。为了帮助您理解工具的工作原理,已创建Demo/文件夹。

此文件夹包含4个文件。

  • .htaccess
  • Animal.php
  • User.php
  • Index.php

.htaccess

允许重定向所有URL到入口文件index.php

  • Animal.php
  • User.php

这些PHP文件包含与数据库中的表相对应的类。

浏览User.php文件。

<?php

    namespace Demo;
    
    use ToolDataBase\Table; //Faire appel à la class table
    use ToolDataBase\ModelData; //Faire appel à la class MadelData
    /** 
    * Cette class herite de la class ModelData et implemente l'interface Table pour pouvoir avoir une flexibilité pour 
    * l'appel dans d'autre class.
    */
    class User extends ModelData implements Table
    {
    
        protected $statement; // Elle est indispancable pour le bon fonctionnement de la class
    
        protected $table = "users"; //Cette variable doit contenire le nom de la table conrespondante dans la base de donnée
    
        /*
        * Les champs ou les actions peuvent se produit
        * C'est a dire les champ ou il peut avoir insertion, lecture, modification
        */
        protected $inserte = ['name', 'age'];
    
        /*
        * Les valeur de c'est champs 
        * Il est important que les valeur par defaut soit des "?"
        */
        protected $value = ' ? , ? ';
        
        /**
        * Est la variable qui prend les table qui sont liée.
        * Elle peut être de type array.
        * S'il a plusieurs ou string si il l'en a une 
        **/
        protected $relation = 'animal'; 
    

}

index.php

这是demo应用程序的入口文件。

使用方法

首先,需要调用命名空间ToolDataBase\

初始化ToolDataBase\ToolDataBase

    $db = new ToolDataBase\ToolDataBase(['db_name' => 'nom', 'db_pass' => 'mot de passe', 'db_host' => 'adress', 'db_user' => 'utilisateur'];);

将此数据库实例注入到对应数据库表的类中

    $user = new User($db);

现在可以使用方法对User类执行SQL操作。

    $user->getAll();

相当于

    $user->select()->get();

两者返回相同的结果。它执行查询

   SELECT * FROM users

select()方法接受一个包含可能列名的array作为参数。如果未定义或为null的select()参数,则选择所有列*

目前此工具使用MySQL。下一个版本将支持MongoDB