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 相关文章推荐
文章推荐系统(三)
Oct 09 PHP
PHP的FTP学习(三)
Oct 09 PHP
php 表单验证实现代码
Mar 10 PHP
使用php来实现网络服务
Sep 15 PHP
PHP中echo,print_r与var_dump区别分析
Sep 29 PHP
PHP四舍五入、取整、round函数使用示例
Feb 06 PHP
PHP页面转UTF-8中文编码乱码的解决办法
Oct 20 PHP
PHP程序中使用adodb连接不同数据库的代码实例
Dec 19 PHP
理解PHP中的Session及对Session有效期的控制
Jan 08 PHP
PHP弱类型语言中类型判断操作实例详解
Aug 10 PHP
laravel添加前台跳转成功页面示例
Oct 22 PHP
ThinkPHP5和ThinkPHP6的区别
Mar 31 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代码把全角数字转为半角数字
2007/12/10 PHP
PHP的变量总结 新手推荐
2011/04/18 PHP
php switch语句多个值匹配同一代码块应用示例
2014/07/29 PHP
php简单获取目录列表的方法
2015/03/24 PHP
WAMP环境中扩展oracle函数库(oci)
2015/06/26 PHP
php 使用 __call实现重载功能示例
2019/11/18 PHP
解放web程序员的输入验证
2006/10/06 Javascript
用js实现手把手教你月入万刀(转贴)
2007/11/07 Javascript
JavaScript 三种创建对象的方法
2009/10/16 Javascript
jquery 学习之二 属性相关
2010/11/23 Javascript
浅谈javascript中this在事件中的应用
2015/02/15 Javascript
jQuery中bind(),live(),delegate(),on()绑定事件方法实例详解
2016/01/19 Javascript
jQuery取消特定的click事件
2016/02/29 Javascript
js获取所有checkbox的值的简单实例
2016/05/30 Javascript
微信小程序 Page()函数详解
2016/10/17 Javascript
Vue网页html转换PDF(最低兼容ie10)的思路详解
2017/08/24 Javascript
Vue配合iView实现省市二级联动的示例代码
2018/07/27 Javascript
vue element table 表格请求后台排序的方法
2018/09/28 Javascript
Vue创建头部组件示例代码详解
2018/10/23 Javascript
[44:40]2018DOTA2亚洲邀请赛3月30日 小组赛A组Liquid VS OG
2018/03/31 DOTA
Python网络爬虫神器PyQuery的基本使用教程
2018/02/03 Python
Python生成词云的实现代码
2020/01/14 Python
30行Python代码实现高分辨率图像导航的方法
2020/05/22 Python
html5构建触屏网站之touch事件介绍
2013/01/07 HTML / CSS
HTML5的自定义属性data-*详细介绍和JS操作实例
2014/04/10 HTML / CSS
html5本地存储之localstorage 、本地数据库、sessionStorage简单使用示例
2014/05/08 HTML / CSS
HTML5 SEO优化的一些建议
2020/08/27 HTML / CSS
如何客观的进行自我评价
2013/12/17 职场文书
青春奉献演讲稿
2014/05/08 职场文书
小学关爱留守儿童活动方案
2014/08/25 职场文书
庆七一宣传标语
2014/10/08 职场文书
实习生矿工检讨书
2014/10/13 职场文书
党员违纪检讨书
2015/05/05 职场文书
现实表现证明材料
2015/06/19 职场文书
2015年国庆节广播稿
2015/08/19 职场文书
小学语文的各类谚语(70首)
2019/08/15 职场文书