Home >Backend Development >PHP Tutorial >Detailed explanation of mysql's database operation function encapsulation

Detailed explanation of mysql's database operation function encapsulation

小云云
小云云Original
2018-03-30 14:36:201850browse

Most of today's PHP operation databases are implemented using mysqli, and it is also very easy to use when implementing mysqli operation database and e-commerce backend management. Since the frequency of use is so high, there is no choice but to To encapsulate the function library, there is no class method for encapsulation here, but a simple structure-oriented method, which is summarized in a unified way:

(1) Connect to the database:


function connect(){

    @$link = mysqli_connect(DB_HOST,DB_USER,DB_PWD);//连接数据库
    mysqli_set_charset($link,DB_CHARSET);//设置数据库字体格式
    mysqli_select_db($link,DB_DBNAME) or die('数据库打开失败');//选择数据库

    if(mysqli_connect_errno())
    {
        die('数据库连接失败 : '.mysqli_connect_errno());
    }

    return $link;
}

(2) Insert data


function insert($link,$table,$array){
    $keys = join(',',array_keys($array));
    $values = "'".join(',',array_values($array))."'";
    $sql = 'insert into {$table}({$keys}) values({$values})';

    mysqli_query($link,$sql);

    return mysqli_insert_id($link);
}


(3) Modify data



function update($link,$table,$array,$where = null) {
     $setstr = ''; 
     foreach ($array as $key => $value) 
     {
        $setstr .= (' '.$key.'='.$value.' '); 
        if(!$setstr){ 
             $sep = '';
        }else{ 
             $sep = ','; 
        } 
        $setstr .= $sep.$key.'='."'"$value"'";
     } 

     $sql = "update {$table} set {$setstr}".($where ? 'where '.$where : ''); 
     mysqli_query($link,$sql); 

     return mysqli_affected_rows($link); 
}

(4) Delete data


function delete($link,$table,$where = null)
{
    $sql = "delete from {$table}".($where?'where '.$where : '');
    mysqli_query($link,$sql);

    return mysqli_affected_rows($link); 
}

(5) Find a record


function fetchOne($link,$sql,$result_type=MYSQLI_ASSOC)
{
    $result = mysqli_query($link,$sql);

    $row = mysqli_fetch_array($result,$result_type);

    return $row;
}

(6) Find multiple records


function fetchAll($link,$sql,$result_type=MYSQLI_ASSOC)
{
    $result = mysqli_query($link,$sql);

    while(@$row = mysqli_fetch_array($result,$result_type))
    {
        $row[] = $row;
    }

    return $row;
}

(7) Return the number of rows in the result set


function getResultNum($link,$sql)
{
    $result = mysqli_query($link,$sql);

    return mysqli_num_rows($result);
}

Related recommendations:

Detailed examples of MySQL database design issues

Optimization summary of mysql database

php code sharing for calculating mysql database size

The above is the detailed content of Detailed explanation of mysql's database operation function encapsulation. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn