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

时间:2022-07-27
本文章向大家介绍PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本文实例讲述了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();