PHP基于MySQLI函数封装的数据库连接工具类【定义
网络编程 2021-07-05 08:24www.168986.cn编程入门
这篇文章主要介绍了PHP基于MySQLI函数封装的数据库连接工具类,结合实例形式分析了php封装mysqli函数实现的数据库操作类定义及连接、增删改查数据库等基本操作用法,需要的朋友可以参考下
本文实例讲述了PHP基于MySQLI函数封装的数据库连接工具类。分享给大家供大家参考,具体如下
mysql.class.php
<?php class mysql { private $mysqli; private $result; / 数据库连接 @param $config 配置数组 / public function connect($config) { $host = $config['host']; //主机地址 $username = $config['username'];//用户名 $password = $config['password'];//密码 $database = $config['database'];//数据库 $port = $config['port']; //端口号 $this->mysqli = new mysqli($host, $username, $password, $database, $port); } / 数据查询 @param $table 数据表 @param null $field 字段 @param null $where 条件 @return mixed 查询结果数目 / public function select($table, $field = null, $where = null) { $sql = "SELECT FROM {$table}"; if (!empty($field)) { $field = '`' . implode('`,`', $field) . '`'; $sql = str_replace('', $field, $sql); } if (!empty($where)) { $sql = $sql . ' WHERE ' . $where; } $this->result = $this->mysqli->query($sql); return $this->result->num_rows; } / @return mixed 获取全部结果 / public function fetchAll() { return $this->result->fetch_all(MYSQLI_ASSOC); } / 插入数据 @param $table 数据表 @param $data 数据数组 @return mixed 插入ID / public function insert($table, $data) { foreach ($data as $key => $value) { $data[$key] = $this->mysqli->real_escape_string($value); } $keys = '`' . implode('`,`', array_keys($data)) . '`'; $values = '\'' . implode("','", array_values($data)) . '\''; $sql = "INSERT INTO {$table}( {$keys} )VALUES( {$values} )"; $this->mysqli->query($sql); return $this->mysqli->insert_id; } / 更新数据 @param $table 数据表 @param $data 数据数组 @param $where 过滤条件 @return mixed 受影响记录 / public function update($table, $data, $where) { foreach ($data as $key => $value) { $data[$key] = $this->mysqli->real_escape_string($value); } $sets = array(); foreach ($data as $key => $value) { $kstr = '`' . $key . '`'; $vstr = '\'' . $value . '\''; array_push($sets, $kstr . '=' . $vstr); } $kav = implode(',', $sets); $sql = "UPDATE {$table} SET {$kav} WHERE {$where}"; $this->mysqli->query($sql); return $this->mysqli->affected_rows; } / 删除数据 @param $table 数据表 @param $where 过滤条件 @return mixed 受影响记录 / public function delete($table, $where) { $sql = "DELETE FROM {$table} WHERE {$where}"; $this->mysqli->query($sql); return $this->mysqli->affected_rows; } }
使用方法
<?php require_once 'mysql.class.php'; / 配置连接参数 / $config = array( 'type' => 'mysql', 'host' => 'localhost', 'username' => 'woider', 'password' => '3243', 'database' => 'php', 'port' => '3306' ); / 连接数据库 / $mysql = new mysql(); $mysql->connect($config); / 查询数据 / //1、查询所有数据 $table = 'mysqli';//数据表 $num = $mysql->select($table); echo '共查询到' . $num . '条数据'; print_r($mysql->fetchAll()); //2、查询部分数据 $field = array('username', 'password'); //过滤字段 $where = 'id % 2 =0'; //过滤条件 $mysql->select($table, $field, $where); print_r($mysql->fetchAll()); / 插入数据 / $table = 'mysqli';//数据表 $data = array( //数据数组 'username' => 'admin', 'password' => sha1('admin') ); $id = $mysql->insert($table, $data); echo '插入记录的ID为' . $id; / 修改数据 / $table = 'mysqli';//数据表 $data = array( 'password' => sha1('nimda') ); $where = 'id = 44'; $rows = $mysql->update($table, $data, $where); echo '受影响的记录数量为' . $rows . '条'; / 删除数据 / $table = 'mysqli'; $where = 'id = 45'; $rows = $mysql->delete($table, $where); echo '已删除' . $rows . '条数据';
更多关于PHP相关内容感兴趣的读者可查看本站专题《》、《》、《》、《》、《》、《》及《》
希望本文所述对大家PHP程序设计有所帮助。
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程