unimed/database-manager

一个用于在PHP中管理数据库连接、结果分页和构建查询的简单库。

dev-master 2023-04-18 13:38 UTC

This package is auto-updated.

Last update: 2024-09-18 17:18:24 UTC


README

这是一个用于在PHP中管理数据库连接、结果分页和构建查询的简单库。

使用方法

要使用此库,请按照以下示例操作

数据库

<?php

require 'vendor/autoload.php';

use Unimed\DatabaseManager\Database;

//DATABASE CREDENTIALS
$dbHost = 'localhost';
$dbName = 'database';
$dbUser = 'root';
$dbPass = 'pass';
$dbPort = 3306;

//CONFIG DATABASE CLASS
Database::config($dbHost,$dbName,$dbUser,$dbPass,$dbPort);

//TABLE INSTANCE
$obDatabase = new Database('table_name');

//SELECT (return a PDOStatement object)
$results = $obDatabase->select('id > 10','name ASC','1','*');

//INSERT (return inserted id)
$id = $obDatabase->insert([
  'name' => 'Unimed'
]);

//UPDATE (return a bool)
$success = $obDatabase->update('id = 1',[
  'name' => 'Unimed2'
]);

//DELETE (return a bool)
$success = $obDatabase->delete('id = 1');

分页

<?php

require 'vendor/autoload.php';

use Unimed\DatabaseManager\Database;
use Unimed\DatabaseManager\Pagination;

//DATABASE CREDENTIALS
$dbHost = 'localhost';
$dbName = 'database';
$dbUser = 'root';
$dbPass = 'pass';
$dbPort = 3306;

//CONFIG DATABASE CLASS
Database::config($dbHost,$dbName,$dbUser,$dbPass,$dbPort);

//TABLE INSTANCE
$obDatabase = new Database('table_name');

//COUNT TOTAL RESULTS
$totalResults = $obDatabase->select('id > 10',null,null,'COUNT(*) as total')->fetchObject()->total;

//CURRENT PAGE
$currentPage  = $_GET['page'] ?? 1;
$itemsPerPage = 10;

//PAGINATION
$obPagination = new Pagination($totalResults,$currentPage,$itemsPerPage);

//SELECT (return a PDOStatement object)
$results = $obDatabase->select('id > 10',null,$obPagination->getLimit());

//PAGES (array)
$pages = $obPagination->getPages();

需求

此库需要PHP 7.0或更高版本。