jpi / database
PDO 的简单扩展
v2.0.0
2024-04-15 22:24 UTC
Requires
- php: ^7.1 || ^8.0
- ext-pdo: *
Requires (Dev)
- jpi/codestyles: ^1.0
README
PDO 的简单扩展,包含一些额外的便捷方法。
安装
使用 Composer
$ composer require jpi/database
用法
额外方法
prep(string, array): PDOStatement: 当你需要将一些参数绑定到一个查询时run(string, array): PDOStatement: 当你将一些参数绑定到一个查询并想要执行它时selectAll(string, array): array: 对于SELECT查询,返回一个包含所有找到的行的多维数组selectFirst(string, array): array: 对于具有LIMIT 1的SELECT查询,返回找到的第一行(如果有的话)的关联数组getLastInsertedId: int|null: 在INSERT查询后很有用,返回新插入行的 ID
重写方法
exec(string, array): int: 对于INSERT、UPDATE和DELETE查询,返回受影响的行数
所有方法(除 getLastInsertedId 外)都接受查询作为第一个参数(必需),以及要绑定到查询的参数数组(可选)。
示例
(假设实例已被创建并设置为名为 $connection 的变量)
selectAll
$rows = $connection->selectAll("SELECT * FROM users;"); /** $rows = [ [ "id" => 1, "first_name" => "Jahidul", "last_name" => "Islam", "email" => "jahidul@jahidulpabelislam.com", "password" => "password123", ... ], [ "id" => 2, "first_name" => "Test", "last_name" => "Example", "email" => "test@example.com", "password" => "password123", ... ], ... ]; */
selectFirst
$row = $connection->selectFirst("SELECT * FROM users LIMIT 1;"); /** $row = [ "id" => 1, "first_name" => "Jahidul", "last_name" => "Islam", "email" => "jahidul@jahidulpabelislam.com", "password" => "password", ... ]; */
exec
// INSERT $numberOfRowsAffected = $connection->exec( "INSERT INTO users (first_name, last_name, email, password) VALUES (:first_name, :last_name, :email, :password);", [ "first_name" => "Jahidul", "last_name" => "Islam", "email" => "jahidul@jahidulpabelislam.com", "password" => "password", ] ); // UPDATE $numberOfRowsAffected = $connection->exec( "UPDATE users SET first_name = :first_name WHERE id = :id;", [ "id" => 1, "first_name" => "Pabel", ] ); // DELETE $numberOfRowsAffected = $connection->exec("DELETE FROM users WHERE id = :id;", ["id" => 1]);
支持
如果你觉得这个库有趣或有用,请分享这个库:在社交媒体上分享,在 GitHub 上点赞等。
如果你发现任何问题或有任何功能请求,你可以打开 问题 或给我发邮件 me @ jahidulpabelislam.com 😏。
作者
许可证
本模块采用通用公共许可证 - 有关详细信息,请参阅 许可证 文件。