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
ajax+php打造进度条 readyState各状态
Mar 20 PHP
php 网页播放器用来播放在线视频的代码(自动判断并选择视频文件类型)
Jun 03 PHP
php安全之直接用$获取值而不$_GET 字符转义
Jun 03 PHP
PHP面向对象程序设计之接口用法
Aug 20 PHP
ThinkPHP通过AJAX返回JSON的两种实现方法
Dec 18 PHP
PHP Streams(流)详细介绍及使用
May 12 PHP
php版微信公众平台接口参数调试实现判断用户行为的方法
Sep 23 PHP
PHP使用PDO调用mssql存储过程的方法示例
Oct 07 PHP
基于PHP-FPM进程池探秘
Oct 17 PHP
Yii框架布局文件的动态切换操作示例
Nov 11 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
Feb 15 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用数组返回无限分类的列表数据的代码
2010/08/08 PHP
mysql,mysqli,PDO的各自不同介绍
2012/09/19 PHP
php中$_GET与$_POST过滤sql注入的方法
2014/11/03 PHP
最新最全PHP生成制作验证码代码详解(推荐)
2016/06/12 PHP
THinkPHP获取客户端IP与IP地址查询的方法
2016/11/14 PHP
PHP实现的简单对称加密与解密方法实例小结
2017/08/28 PHP
jQuery 版本的文本输入框检查器Input Check
2009/07/09 Javascript
JS动态添加与删除select中的Option对象(示例代码)
2013/12/25 Javascript
基于JS如何实现类似QQ好友头像hover时显示资料卡的效果(推荐)
2016/06/09 Javascript
AngularJs ng-route路由详解及实例代码
2016/09/14 Javascript
node.js中的事件处理机制详解
2016/11/26 Javascript
Bootstrap笔记之缩略图、警告框实例详解
2017/03/09 Javascript
js实现简单模态框实例
2018/11/16 Javascript
express启用https使用小记
2019/05/21 Javascript
js逆向解密之网络爬虫
2019/05/30 Javascript
vuex 实现getter值赋值给vue组件里的data示例
2019/11/05 Javascript
[03:26]回顾2015国际邀请赛中国区预选赛
2015/06/09 DOTA
[44:58]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第二场
2018/04/06 DOTA
python使用递归解决全排列数字示例
2014/02/11 Python
python执行等待程序直到第二天零点的方法
2015/04/23 Python
以windows service方式运行Python程序的方法
2015/06/03 Python
Python按行读取文件的简单实现方法
2016/06/22 Python
Php多进程实现代码
2018/05/07 Python
python调用java的jar包方法
2018/12/15 Python
python采集微信公众号文章
2018/12/20 Python
python实现AES加密与解密
2019/03/28 Python
让你相见恨晚的十个Python骚操作
2020/11/18 Python
Java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?
2012/05/30 面试题
土木工程毕业生推荐信
2013/10/28 职场文书
执法作风整顿剖析材料
2014/10/11 职场文书
2015年建筑工作总结报告
2015/05/04 职场文书
2016高一新生军训心得体会
2016/01/11 职场文书
2016年社会主义核心价值观心得体会
2016/01/21 职场文书
《文化苦旅》读后感:阅读,让人诗意地栖居在大地上
2019/12/24 职场文书
python tkinter实现定时关机
2021/04/21 Python
Python破解极验滑动验证码详细步骤
2021/05/21 Python