ngdang / simple_querybuilder
由 infktern 开发的简单查询构建器
dev-main
2022-09-28 06:45 UTC
Requires
- ext-pdo: *
This package is auto-updated.
Last update: 2024-09-28 10:55:55 UTC
README
题目:创建简单查询构建器
作者:Nguyễn Đoàn Đăng
下载代码并运行代码,请访问 https://github.com/dnang36/simple_querybuilder
安装
composer require ngdang/simple_querybuilder
使用
- 使用 composer 自动加载器
- 在 $config 中更改 dbname, password 信息
require 'vendor/autoload.php'; $config = [ 'host' => 'localhost', 'dbname' => 'pdotest', 'charset' => 'utf8', 'username' => 'root', 'password' => '12345678', ];
- 使用 config::connect($config) 初始化查询构建器
$query = new QueryBuilder(config::connect($config));
- 使用查询构建器
// Lấy tất cả dữ liệu từ bảng user $result = $query->select('user')->all(); // lấy user có id > 3 giới hạn là 3 user $result = $query->select('user') ->where([['id','>',3]]) ->limit(3) ->all(); print_r($result); //thêm user mới: $query->insert('user',[ ['name','address'], ["hung","thai binh"] ])->go(); //sửa user có id = 4 $query->update('user',[ 'name'=>'vnp', 'address'=>'102 thái thinh' ])->where([['id','=',4]]) ->go(); //xoá user id = 18; $query->delete('user') ->where([['id','=',18]]) ->go();
- 结果
Array ( [0] => Array ( [id] => 1 [name] => dang [address] => ha noi ) )
- 与 PDO 一起使用
$user = ngdang\dto\test\user::query(clone $query)->select()->all(); print_r($user);
- PDO 的结果
[0] => ngdang\dto\test\user Object ( [attributes:protected] => Array ( [id] => 1 name] => dang [address] => ha noi ) [original:protected] => Array ( ) [casts:protected] => Array ( ) [table:protected] => user )
掌握的知识
1. 简介 PDO - PHP 数据对象
- PHP 数据对象 (PDO) 是一个提供统一方式来处理多种数据库的类。当使用 PDO 时,您不需要编写特定的 SQL 命令,而是使用 PDO 提供的方法,这可以节省时间并使数据库转换变得容易,只需更改连接字符串(数据库连接字符串)即可。
1.1. 连接数据库
- 每种数据库管理系统(Database Management System- DBMS)将具有不同的连接方法(有些需要用户名、密码、数据库路径、端口,有些则不需要)。大多数流行 DBMS 的连接字符串都具有以下格式
$conn = new PDO('mysql:host=localhost;dbname=pdo', $username, $password);
- 其中 mysql 是 DBMS 名称,localhost 表示数据库位于同一服务器上,pdo 是数据库名称。$username 和 $password 是两个包含认证信息的变量。
- 当不再需要与数据库进行操作时,只需将 $conn 变量设置为 null 即可断开连接;$conn = null;
1.2. 选择数据 - 从数据库“读取”数据
- 当从数据库读取数据时,PDO 将通过 fetch() 方法返回数据,其结构为数组(array)或对象(object)。
- FETCH_ASSOC: 此类型 fetch 将创建一个按列名(即数组的键)索引的关联数组,类似于使用 MySQL/MySQLi 扩展。
2. 查询构建器
- 查询构建器是一种技术,它可以帮助程序员快速、准确地构建关系型数据库查询,而不是手动编写查询。