萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> php實現的mysql數據庫操作類

php實現的mysql數據庫操作類

 這篇文章主要介紹了php實現的mysql數據庫操作類,本文最後有使用方法,需要的朋友可以參考下

 代碼如下: <?php /* 數據庫操作類 */ class Mysql{  private $LocalHost = 'localhost';  private $LoaclUser = 'root';  private $LocalPass = '123456';  private $LocalBase = 'jiangxibaiyi';  private $LocalCode = 'UTF8';  private $PreFix;  private $Conn;  private $Start     = 0;  private $Error     = false; //數據庫連接狀態, false表示未連接或連接不正常  public  $Err       = true;  //Sql執行結果    private $Table;  private $Field     = '*';  private $Where     = '';  private $Order     = '';    private $PageSize  = 0; //分頁顯示->每頁多少條,0為不分頁顯示  private $PageCount = 1; //分頁顯示->總共有多少條  private $PageNum   = 1; //分頁顯示->總共有多少頁  private $PageNo    = 1; //分頁顯示->當前第幾頁  private $PageKey   = 'page'; //分頁url參數鍵  private $PageStart = 0; //分頁顯示->當前從第幾條開始返回      private $Select;  private $Rest;    private $Result    = false;//結果集    public $FormArray = array();    public $Instr_ID  = 0;  private $j =  0;      public function Parameter($Loca, $Root, $Pass, $Base, $Code, $PreFix = ''){   $this->LoaclUser = $Root;   $this->LocalBase = $Base;   $this->LocalCode = $Code;   $this->LocalHost = $Loca;   $this->LocalPass = $Pass;   $this->PreFix    = $PreFix;   return $this;  }  private function Connection( $Sql ){   !function_exists(mysqli_connect) ? die('查詢失敗,無法加載mysqli擴展') : null;   $this->Conn = @new mysqli( $this->LocalHost, $this->LoaclUser, $this->LocalPass, $this->LocalBase);   $this->Error = mysqli_connect_errno() == 0 ? true : false;   !$this->Error ? die('數據庫連接錯誤,請檢查數據庫連接參數') : null;   $this->Conn->query('SET NAMES ' . $this->LocalCode);   $this->Rest = $this->Conn->query($Sql);   $this->Err  = mysqli_error($this->Conn);   $this->Instr_ID = mysqli_insert_id($this->Conn);   $this->Rest->free_result;   $this->Conn->close;   $this -> FormArray = '';   return $this;  }    public function null(){   $this->PageSize  = 0;   //$this->PageCount = 1;   $this->PageStart = 1;   $this->Field     = ' * ';      $this->Select    = '';   unset($this->Table, $this->Where,$this->Order, $this->Result);  }    public function Table( $TableName ) {//數據表    $this -> null();    $this->Table = '`' . $this->PreFix . $TableName . '`';    return $this;  }    public function Field( $Array = '*' ) {//數據字段    !empty( $this->Field ) ? $this->Field = '' : null;    $Array = explode(',', $Array);    foreach ( $Array as $field ) {    $this->Field .= !$this->Start ? '`' . $field . '`' :  ', `' . $field . '`';    $this->Start++;    }    $this->Start = 0;    return $this;  }    public function Where( $Where ) {//條件        $this->Where = ' where ' .$Where;     return $this;   }    public function Order( $Order ) {//排序    $this->Order = ' order by ' . $Order;    return $this;  }    public function pk( $key ) {//分頁url參數鍵    $this->PageKey = $key;    return $this;  }    public function Page( $PageSize ) {//分頁    $this->PageSize = $PageSize;    $this->PageNo   = $this->get( $this->PageKey );    $this->PageNo   = empty( $this->PageNo ) || !isset( $this->PageNo ) || !is_numeric( $this->PageNo ) || $this->PageNo < 1 ? 1 : $this->PageNo;    return $this;  }    public function post( $Key, $Filter = true ){   return $Filter ? strip_tags($_POST[$Key]) : $_POST[$Key];  }    public function get( $Key, $Filter = true ){   return $Filter ? strip_tags($_GET[$Key]) : $_GET[$Key];  }    public function Sel(){   $this->Select = 'Select ' . $this->Field . ' from ' . $this->Table . $this->Where . $this->Order;   $this->Connection( $this->Select );   if ( $this->Rest->num_rows ) {    while ( $Rs = $this->Rest->fetch_assoc() ) {      $this->Result[] = $Rs;     }   }     $DataBase = $this->Result;     return empty($DataBase) ? false : $DataBase;  }    public function querys( $Sql = '', $Type = 'not', $biao = false ) {   $this->Select = $Sql;   $this->Connection( $this->Select );   if ( $this->Rest->num_rows ) {      if ( !$biao ) {    while ( $Rs = $this->Rest->fetch_array() ) {      $this->Result[] = !preg_match('/^d+$/i', $Type) ?  $Rs : $Rs[ $Type ];     }   } else {    while ( $Rs = $this->Rest->fetch_assoc() ) {      $this->Result[] = $Rs;     }   }   }     $DataBase = $this->Result;     return empty($DataBase) ? false : $DataBase;    }    public function executes( $Sql = '' ){   $this->Connection( $Sql  );   return $this->Rest;  }      public function exists( $T = '', $F = '', $W = ''){   if ( empty( $F ) ) { return 0; }   $cmd = empty( $W ) ? 'Select sum(' . $F . ') as `baiyinum` from `' . $this->PreFix . $T .'`' : 'Select sum(' . $F . ') as `baiyinum` from `' . $this->PreFix . $T .'` Where ' . $W;         $this->Connection( $cmd );   unset( $T, $F, $W, $cmd );   $Rel =  $this->Rest->fetch_array();   return round( $Rel['baiyinum'], 2 );  }      public function ExistsTo( $Bili = 10000, $T = '', $F = '', $W = ''){   if ( empty( $F ) ) { return 0; }   $cmd = empty( $W ) ? 'Select sum(' . $F . ') as `baiyinum` from `' . $this->PreFix . $T .'`' : 'Select sum(' . $F . ') as `baiyinum` from `' . $this->PreFix . $T .'` Where ' . $W;         $this->Connection( $cmd );   unset( $T, $F, $W, $cmd );   $Rel =  $this->Rest->fetch_array();   return round( $Rel['baiyinum'] * $Bili );  }      public function Select( $Type = true, $ListNum = 1 ){ //返回記錄(數組形式, 返回條數)    $this->Select = 'Select ' . $this->Field . ' from ' . $this->Table . $this->Where . $this->Order;    if ( is_numeric( $ListNum ) ) {    if ( $this->PageSize > 0 ) {    $this->Connection( $this->Select );//執行查詢    $this->PageCount =  $this->Rest->num_rows;//取得記錄總數    $this->PageNum   =  ceil($this->PageCount / $this->PageSize); //總共有多少頁    $this->PageNo    = $this->PageNo > $this->PageNum ? $this->PageNum : $this->PageNo;    $this->PageStart = ( $this->PageNo - 1 ) * $this->PageSize;   //當前從第幾條開始返回    $this->Select   .= ' limit ' . $this->PageStart . ', ' .$t
copyright © 萬盛學電腦網 all rights reserved