easeappphp / pdolight
一个简单且安全的PHP库,用于执行基于PDO的数据库查询。提供方法以分别以不同方法准备和执行SQL语句(以便缓存准备好的语句),也可以在单个方法中一起执行。
Requires
- php: >=8.1
- ext-pdo: *
Requires (Dev)
- php: >=8.1
- ext-pdo: *
README
一个简单且安全的PHP库,用于执行基于PDO的数据库查询。提供方法以分别以不同方法准备和执行SQL语句(以便缓存准备好的语句),也可以在单个方法中一起执行。
为什么选择PDOLight?
以简单和安全的方式在MySQL/MariaDB上执行SQL查询,防止SQL注入始终是一件重要的事情。这个库保持简单,因此可以在进行数据库查询时编写查询,并以关联数组的形式提供值。
优点
- 使用准备好的语句
- 目前支持MySQL/MariaDB连接对象
- 基本支持命名参数,而不是使用问号
"?"
占位符 - 虽然清理输入始终是一个好习惯,但提供给
runPreparedQuery
或executeQuery
方法的值通过安全执行相应的数据库查询来达到目的 - 有必要的检查以查找数据库连接错误,并在准备数据库查询时重新连接到数据库
入门指南
使用Composer,运行
composer require easeappphp/pdolight:^1.0.9
请注意,vendor
文件夹和vendor/autoload.php
脚本是由Composer生成的;它们不是PDOLight的一部分。
为了包含库,
<?php require 'vendor/autoload.php'; use \EaseAppPHP\PDOLight\PDOLight;
为了连接到数据库,您需要通过以下顺序(服务器主机名、用户名、密码、数据库名、字符集、端口号、PDO默认获取模式)以参数形式初始化PDOLight
类:
$dbHost = "localhost"; $dbUsername = "database_username"; $dbPassword = "database_password_value"; $dbName = "database_name"; $charset = "utf8mb4"; $port = "3306"; $pdoAttrDefaultFetchMode = \PDO::FETCH_ASSOC; //\PDO::FETCH_ASSOC or \PDO::FETCH_OBJ $pdoConn = new PDOLight($dbHost, $dbUsername, $dbPassword, $dbName, $charset, $port, $pdoAttrDefaultFetchMode);
要执行SQL查询,同时在单个方法中准备和执行语句,必须使用SQL查询和相应的值作为关联数组以及CRUD操作类型作为第三个参数来调用executeQuery
方法。
注意:CRUD操作类型的值包括:insert | update | delete | selectSingle | selectMultiple
$query = "SELECT * FROM `table_name`"; $values_array = array(); $queryResult = $pdoConn->executeQuery($query, $values_array, "selectMultiple");
要执行SQL查询,同时在两个不同的方法中准备和执行语句,必须依次调用prepareQuery
和runPreparedQuery
方法,使用prepareQuery
方法准备SQL查询,并使用准备好的语句以及相应的值(作为关联数组)和CRUD操作类型输入提供给runPreparedQuery
以执行查询。
注意:CRUD操作类型的值包括:insert | update | delete | selectSingle | selectMultiple
$query = "SELECT * FROM `table_name`"; $values_array = array(); $preparedQuery = $pdoConn->prepareQuery($query); $queryResult = $pdoConn->runPreparedQuery($preparedQuery, $values_array, "selectMultiple");