mysqli函数操作mysql实例

16 篇文章 0 订阅

php利用mysqli操作mysql数据库的类,实现增删改查

说明:

全类利用了mysqli函数库操作,需要提供SQL实现数据库的增删改查。

前几天在csdn上总结了mysqli的函数库,但只不过是对每一个函数的理解和熟悉。现在给出mysqli操作类,实操mysqli的函数,达到熟练运用。以及将理论的知识
,实用化。

前段时间的mysqli函数库的总结,我会关联在本文中 

设计思路:

利用构造函数的判断,既可以给属性赋值默认值,也可以实例化的时候添加新的数据库信息。

把连接数据库,执行sql语句单独设定一个方法,可以在后续处理结果集的过程中,一劳永逸的调用。也就是处理SQL不管增删改查,都在一个方法中操作。只需要提
供结果集输出结果集即可。

将结果集处理分成了不同的方法,适应于增删改查最后需要的结果。

代码如下:

    <?php
    // +----------------------------------------------------------------------
    // | Theme:封装的数据库操作类,进行增删改查
    // +----------------------------------------------------------------------
    // | Introduce:只需要sql语句,就可以实现,连接,执行等等已经实现
    // +----------------------------------------------------------------------
    // | Author: <NgauSiuKong@gmail.com>
    // +----------------------------------------------------------------------
        /**
         * 数据库操作类,进行增删改查
         * @author <NgauSiuKong@gmail.com>
         */
        class DatabaseOperate 
        { 
            private $host = "xxxxxxx";//服务器地址
            private $name = "xxxxxxx";//数据库用户名
            private $pwd = "xxxxxxx";//数据库登录密码
            private $dBase = "xxxxxxx";//数据库名称
            private $conn = "";//数据库连接对象
            private $result = "";//结果集
            private $filesArray = array();
            private $rowsArray = array();
            /**
             * 构造函数,实现数据库连接,默认设置本地
             * @param $host
             * @param $name
             * @param $pwd
             * @param dBase
             * @author <NgauSiuKong@gmail.com>
             */
            public function __construct($host,$name,$pwd,$dBase)
            { 
                if($host != "") $this->host = $host;
                if($name != "") $this->name = $name;
                if($pwd != "") $this->pwd = $pwd;
                if($dBase != "") $this->dBase = $dBase;
                $this->init_conn();
            }
            /**
             * 连接数据库,设置字符集
             * @author <NgauSiuKong@gmail.com>
             */
            public function init_conn()
            { 
                $this->conn = @mysqli_connect($this->host,$this->name,$this->pwd,$this->dBase);
                mysqli_set_charset($this->conn,'utf8');
            }
            /**
             * 利用sql语句执行,返回结果集
             * @author <NgauSiuKong@gmail.com>
             */
            public function mysql_query_rst($sql)
            { 
                if($this->conn == ""){ 
                    $this->init_conn();
                }
                $this->result = @mysqli_query($this->conn,$sql);
            }
            /**
             * 返回查询之后的记录函数
             * @author <NgauSiuKong@gmail.com>
             */
            public function getSelCount($sql)
            { 
                $this->mysql_query_rst($sql);
                if(mysqli_connect_errno() == 0){ 
                    $sql_num = mysqli_num_rows($this->result);
                    return $sql_num;
                }else{ 
                    return "Connect failed:".mysqli_connect_error();            
                }
            }
            /**
             * 取出查询之后结果集的单条记录
             * @author <NgauSiuKong@gmail.com>
             */
            public function getOneArray($sql)
            { 
                $this->mysql_query_rst($sql);
                if(mysqli_connect_errno() == 0){ 
                    $this->rowsRst = mysqli_fetch_assoc($this->result);
                    return $this->rowsRst;
                }else{ 
                    return "Connect failed:".mysqli_connect_error();    
                }
            }
            /**
             * 取出查询之后结果集的数组记录
             * @author <NgauSiuKong@gmail.com>
             */
            public function getAllArray($sql)
            { 
                $this->mysql_query_rst($sql);
                if(mysqli_connect_errno() == 0){ 
                    while($row = mysqli_fetch_assoc($this->result)){ 
                        $this->rowsArray[] = $row;
                    }
                    return $this->rowsArray;
                }else{ 
                    return "Connect failed:".mysqli_connect_error();
                }
            }
            /**
             * 提供添加数据的id
             * @author <NgauSiuKong@gmail.com>
             */
            public function getAddId($sql)
            { 
                $this->mysql_query_rst($sql);
                if(mysqli_connect_errno() == 0){ 
                    $addId = mysqli_insert_id($this->conn);
                    return $addId;
                }else{ 
                    return "Connect failed:".mysqli_connect_error();
                }
            }
            /**
             * 提供增删改的受影响行数
             * @author <NgauSiuKong@gmail.com>
             */
            public function getRows($sql)
            { 
                $this->mysql_query_rst($sql);
                if(mysqli_connect_errno() == 0){ 
                    $rows = mysqli_affected_rows($this->conn);
                    return $rows;
                }else{ 
                    return "Connect failed:".mysqli_connect_error();
                }
            }
            /**
             * 释放结果集
             * @author <NgauSiuKong@gmail.com>
             */
            public function freeResult($sql)
            { 
                mysqli_free_result($result);
                $this->msg = "";
                $this->fieldsNum = 0;
                $this->rowsNum = 0;
                $this->filesArray = "";
                $this->rowsArray = "";
            }
            /**
             * 关闭数据库
             * @author <NgauSiuKong@gmail.com>
             */
            public function close_conn()
            { 
                $this->freeResult();
                mysqli_close($this->conn);
                $this->conn = "";
            }
        }
    ?>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值