PHP封装自己的DB类实现对数据库的CURD操作(适用于入门学习)

新建一个文件夹包括一下几个文件:mySqlConfig.php、mySqlFunction.php、show.php

mySqlConfig.php:

    //定义常量,配置自己的数据库相关信息
    define('DB_HOST', 'localhost');  
    define('DB_USER', 'root');  
    define('DB_PWD', 'root');  
    define('DB_CHARSET', 'UTF8');  
    define('DB_DBNAME', 'DBname');

mySqlFunction.php:

<?php

class DB
{
    /** 
     * 连接MYSQL函数 
     * 连接MYSQL函数,通过常量的形式来连接数据库 
     * 自定义配置文件,配置文件中自定义常量,包含需要使用的信息 
     * @return resource 
     */
    function connect()
    {   
        //连接mysql  
        $link = mysqli_connect(DB_HOST, DB_USER, DB_PWD) or die('数据库连接失败<br/>ERROR ' . mysqli_error() . ':' . mysqli_error());  
        //设置字符集  
        mysqli_set_charset($link, DB_CHARSET);  
        //打开指定的数据库  
        mysqli_select_db($link, DB_DBNAME) or die('指定的数据库打开失败');
        return $link;
    }

    /** 
     * 插入一条记录 
     * @param string $sql 
     * @param obj $link
     * @return string 
     */
    function insert($link, $sql)
    {
        if (mysqli_query($link, $sql)) {
            echo "插入数据成功";
        } else {
            echo "Error insert data: " . $link->error;
        }
    }

    /** 
     * 更新一条记录 
     * @param string $sql 
     * @param obj $link
     * @return string 
     */
    function update($link, $sql)
    {
        if (mysqli_query($link, $sql)) {
            echo "更新数据成功";
        } else {
            echo "Error update data: " . $link->error;
        }
    }

    /** 
     * 查询一条记录 
     * @param string $sql 
     * @param string $result_type 
     * @param obj $link 
     * @return string|boolean 
     */
    function fetchOne($sql, $link, $result_type = MYSQLI_ASSOC)
    {
        $result = mysqli_query($link, $sql);
        if ($result && mysqli_num_rows($result) > 0) {
            return mysqli_fetch_array($result, $result_type);
        } else {
            return false;
        }
    }

    /** 
     * 得到表中的所有记录 
     * @param string $sql 
     * @param string $result_type 
     * @param obj $link 
     * @return array|boolean
     */
    function fetchAll($sql, $link, $result_type = MYSQLI_ASSOC)
    {
        $result = mysqli_query($link, $sql);
        if ($result && mysqli_num_rows($result) > 0) {
            while ($row = mysqli_fetch_array($result, $result_type)) {
                $rows[] = $row;
            }
            return $rows;
        } else {
            return false;
        }
    }


    /**取得结果集中的记录的条数 
     * @param string $sql 
     * @param obj $link 
     * @return number|boolean 
     */
    function getTotalRows($sql, $link)
    {
        $result = mysqli_query($link, $sql);
        if ($result) {
            return mysqli_num_rows($result);
        } else {
            return false;
        }
    }

}  

show.php:

<!DOCTYPE html>
<head>
 
</head>
<body>
<?php
    require_once 'mySqlFunction.php';
    require_once 'mySqlConfig.php';

    $db = new DB();
    $link = $db->connect();
    $sql = "SELECT * FROM tp_article";
    $rows = $db->fetchAll($sql, $link);
    echo "<table border='1' align='center'>";
    echo "<tr><td width='80px'>标题</td><td width='90px'>作者</td></tr>";
    foreach ($rows as $val) {
        echo "<tr><td>" . $val['title'] . "</td><td>" . $val['author'] . "</td></tr>";
    }
    echo "</table>";
?>
</body>
</html>

数据库数据表情况:                                             打印结果情况:

PHP封装自己的DB类实现对数据库的CURD操作(适用于入门学习)PHP封装自己的DB类实现对数据库的CURD操作(适用于入门学习)


这样原生的php操作数据库实现基本的CURD就实现啦~