php教程

超轻量级php框架startmvc

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

更新时间:2020-04-03 08:49:01 作者:startmvc
本文实例讲述了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();