>백엔드 개발 >PHP 튜토리얼 >mysql의 데이터베이스 연산 기능 캡슐화에 대한 자세한 설명

mysql의 데이터베이스 연산 기능 캡슐화에 대한 자세한 설명

小云云
小云云원래의
2018-03-30 14:36:201849검색

현재 대부분의 PHP 운영 데이터베이스는 mysqli를 사용하여 구현되어 있으며, 전자상거래 백엔드에서 데이터베이스를 운영하고 관리하는 것도 매우 쉽습니다. 함수 라이브러리 캡슐화, 여기에는 캡슐화를 위한 클래스 메서드가 없지만 간단한 구조 중심 메서드가 통합된 방식으로 요약됩니다.

(1) 데이터베이스에 연결:


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) 데이터 삽입


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) 데이터 수정



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) 데이터 삭제


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

    return mysqli_affected_rows($link); 
}

(5) 기록 찾기


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

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

    return $row;
}

(6) 자세히 알아보기 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) 결과 집합의 행 수를 반환합니다


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

    return mysqli_num_rows($result);
}

관련 권장 사항:

MySQL 데이터베이스 설계 문제의 자세한 예

mysql 데이터베이스 최적화 요약

php 계산 mysql 데이터베이스 크기 코드 공유

위 내용은 mysql의 데이터베이스 연산 기능 캡슐화에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.