PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例


Posted in PHP onFebruary 25, 2019

本文实例讲述了PHP封装mysqli基于面向对象的mysql数据库操作与用法。分享给大家供大家参考,具体如下:

首先封装好mysql类

mysql.php

<?php
class Mysql{
     private static $host="localhost";
     private static $user="root";
     private static $password="123456";
     private static $dbName="test";           //数据库名
     private static $charset="utf8";          //字符编码
     private static $port="3306";            //端口号
     private $conn=null;
     function __construct(){
       $this->conn=new mysqli(self::$host,self::$user,self::$password,self::$dbName,self::$port);
       if(!$this->conn)
       {
          die("数据库连接失败!".$this->conn->connect_error);
       }else{
         echo "连接成功!";
       }
       $this->conn->query("set names ".self::$charset);
     }
     //执行sql语句
     function sql($sql){
       $res=$this->conn->query($sql);
     if(!$res)
       {
          echo "数据操作失败";
       }
       else
       {
          if($this->conn->affected_rows>0)
          {
             return $res;
          }
          else
          {
            echo "0行数据受影响!";
          }
       }
     }
     //返回受影响数据行数
     function getResultNum($sql){
      $res=$this->conn->query($sql);
      return mysqli_num_rows($res);
      }
     //关闭数据库
     public function close()
     {
       @mysqli_close($this->conn);
     }
}
?>

然后就可以调用了

index.php

<?php
require_once "mysql.php";
$conn=new Mysql();
$sql="select * from user";
//执行查询并获取查询结果
$result=$conn->sql($sql);
//输出受影响数据行数
$num=$conn->getResultNum($sql);
echo "影响的行数:".$num;
//读取并输出记录
while ($row = mysqli_fetch_assoc($result))
{
  echo "{$row['name']} ";
  echo "{$row['password']}";
}
//关闭数据库
$conn->close();

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
简单的用PHP编写的导航条程序
Oct 09 PHP
php Undefined index和Undefined variable的解决方法
Mar 27 PHP
PHP生成HTML静态页面实例代码
Aug 31 PHP
php设置允许大文件上传示例代码
Mar 10 PHP
PHP中cookie和session的区别实例分析
Aug 28 PHP
PHP中preg_match正则匹配中的/u、/i、/s含义
Apr 17 PHP
php商品对比功能代码分享
Sep 24 PHP
Smarty环境配置与使用入门教程
May 11 PHP
PHPCMS2008广告模板SQL注入漏洞修复
Oct 11 PHP
php安装扩展mysqli的实现步骤及报错解决办法
Sep 23 PHP
PHP实现合并两个排序链表的方法
Jan 19 PHP
PHP实现统计代码行数小工具
Sep 19 PHP
Laravel核心解读之异常处理的实践过程
Feb 24 #PHP
PHP通过GD库实现验证码功能示例
Feb 23 #PHP
php中file_get_contents()函数用法实例
Feb 21 #PHP
PHP基于mcript扩展实现对称加密功能示例
Feb 21 #PHP
PHP+jQuery实现双击修改table表格功能示例
Feb 21 #PHP
PHP+jQuery实现即点即改功能示例
Feb 21 #PHP
PHP hebrev()函数用法讲解
Feb 21 #PHP
You might like
如何使用PHP中的字符串函数
2006/10/09 PHP
PHP ajax 分页类代码
2008/11/13 PHP
php利用事务处理转账问题
2015/04/22 PHP
[原创]php使用curl判断网页404(不存在)的方法
2016/06/23 PHP
Firefox下提示illegal character并出现乱码的原因
2010/03/25 Javascript
JavaScript 字符串处理函数使用小结
2010/12/02 Javascript
ajax 同步请求和异步请求的差异分析
2011/07/04 Javascript
字段太多jquey快速清空表单内容方法
2014/08/21 Javascript
Js控制滑轮左右滑动实例
2015/02/13 Javascript
javascript的document中的动态添加标签实现方法
2016/10/24 Javascript
javascript 数组去重复(在线去重工具)
2016/12/17 Javascript
解决nodejs中使用http请求返回值为html时乱码的问题
2017/02/18 NodeJs
基于Node.js的WebSocket通信实现
2017/03/11 Javascript
axios中cookie跨域及相关配置示例详解
2017/12/20 Javascript
vue采用EventBus实现跨组件通信及注意事项小结
2018/06/14 Javascript
JavaScript实现数字前补“0”的五种方法示例
2019/01/03 Javascript
JavaScript使用闭包模仿块级作用域操作示例
2019/01/21 Javascript
使用Vue CLI创建typescript项目的方法
2019/08/09 Javascript
vue 实现 rem 布局或vw 布局的方法
2019/11/13 Javascript
通过微信公众平台获取公众号文章的方法示例
2019/12/25 Javascript
js实现动态时钟
2020/03/12 Javascript
[56:20]LGD vs VP Supermajor 败者组决赛 BO3 第三场 6.10
2018/07/04 DOTA
Python首次安装后运行报错(0xc000007b)的解决方法
2016/10/18 Python
Python使用zip合并相邻列表项的方法示例
2018/03/17 Python
Python格式化输出%s和%d
2018/05/07 Python
django ModelForm修改显示缩略图 imagefield类型的实例
2019/07/28 Python
tensorflow 变长序列存储实例
2020/01/20 Python
解决Keyerror ''acc'' KeyError: ''val_acc''问题
2020/06/18 Python
自定义html标记替换html5新增元素
2008/10/17 HTML / CSS
html5自动播放mov格式视频的实例代码
2020/01/14 HTML / CSS
北美Newegg打造的全球尖货海购平台:tt海购
2018/09/28 全球购物
美国正宗设计师眼镜在线零售商:EYEZZ
2019/03/23 全球购物
欧洲最大的高尔夫零售商:American Golf
2019/09/02 全球购物
体育教育毕业生自荐信
2014/06/29 职场文书
2014年商场工作总结
2014/11/22 职场文书
经理助理岗位职责
2015/02/02 职场文书