PHP实现增删改查的MySQLi数据库操作类
技术教程
10-21
阅读:1921
评论:0
这是一个非常简单的使用PHP实现增删改查的MySQLi数据库操作类,以下是完整的代码及使用示例。
Database.php
<?php
class Database {
private $host;
private $user;
private $password;
private $database;
private $connection;
public function __construct($host, $user, $password, $database) {
$this->host = $host;
$this->user = $user;
$this->password = $password;
$this->database = $database;
$this->connection = new mysqli($this->host, $this->user, $this->password, $this->database);
if ($this->connection->connect_error) {
die("Connection failed: " . $this->connection->connect_error);
}
}
public function query($sql) {
$result = $this->connection->query($sql);
if (!$result) {
die("Query failed: " . $this->connection->error);
}
return $result;
}
public function select($table, $fields, $conditions = "", $limit = "") {
$sql = "SELECT " . $fields . " FROM " . $table;
if (!empty($conditions)) {
$sql .= " WHERE " . $conditions;
}
if (!empty($limit)) {
$sql .= " ORDER BY " . $limit;
}
$result = $this->query($sql);
$rows = array();
while ($row = $result->fetch_assoc()) {
$rows[] = $row;
}
return $rows;
}
public function insert($table, $data) {
$keys = array();
$values = array();
foreach ($data as $key => $value) {
$keys[] = $key;
$values[] = "'" . $this->connection->real_escape_string($value) . "'";
}
$sql = "INSERT INTO " . $table . " (" . implode(", ", $keys) . ") VALUES (" . implode(", ", $values) . ")";
return $this->query($sql);
}
public function update($table, $data, $conditions = "") {
$set = array();
foreach ($data as $key => $value) {
$set[] = $key . "='" . $this->connection->real_escape_string($value) . "'";
}
$sql = "UPDATE " . $table . " SET " . implode(", ", $set);
if (!empty($conditions)) {
$sql .= " WHERE " . $conditions;
}
return $this->query($sql);
}
public function delete($table, $conditions = "") {
$sql = "DELETE FROM " . $table;
if (!empty($conditions)) {
$sql .= " WHERE " . $conditions;
}
return $this->query($sql);
}
public function __destruct() {
$this->connection->close();
}
}
?>Db.php
<?php // MySQli数据库操作类 include 'Database.php'; // 数据库配置 $DbConfig = [ 'host' => 'xxx', 'user' => 'xxx', 'password' => 'xxx', 'database' => 'xxx' ]; ?>
使用
1. 创建Database.php文件并拷贝以上代码;
2. 创建Db.php文件并拷贝以上代码;修改配置信息,分别为数据库地址、数据库账号、密码、数据库名称;
3. 创建index.php文件;
4. 以上三个文件均在同一目录。
插入数据
<?php
// 引入配置
include './Db.php';
// 实例化
$db = new Database($DbConfig['host'], $DbConfig['user'], $DbConfig['password'], $DbConfig['database']);
$results = $db->insert('表名', array('字段名'=>'数据'));
// 例如:$results = $db->insert('users', array('username'=>'tanking','password'=>'123456'));
?>删除数据
$results = $db->delete('test', 'id=1');
// 有两个参数,test是表名,id=1是条件更新数据
$results = $db->update('test', array('user'=>'zhangsan','password'=>'888888'), 'id=1');
// 有三个参数,test是表名,array是修改的字段数据,id=1是条件查询数据
$results = $db->select('test','user', 'id=1'); // 根据条件查询
// 有三个参数,test是表名,user是指定查询的字段,id=1是条件
// ---
// $results = $db->select('test','*','','id desc'); // desc排序
// 有四个参数,test是表名,*是查询所有字段,第三个参数为空就是不设置查询条件,id desc是排序
print_r($results);执行原生语句
// 执行原生语句
$results = $db->query('SELECT * FROM test');版权声明
本站资源收集于网络,只做学习和交流使用,版权归原作者所有!
请遵循相关法律法规,请在下载后24小时内删除.如发生侵权行为与本站无关
如果本站内容侵犯到您的权益,请及时联系站长删除,我们将及时处理!



