PHP基於單例模式實現的資料庫操作基類,php例模式資料庫_PHP教程

來源:互聯網
上載者:User

PHP基於單例模式實現的資料庫操作基類,php例模式資料庫


本文執行個體講述了PHP基於單例模式實現的資料庫操作基類。分享給大家供大家參考,具體如下:

設定檔:

<?php$db = array(    'host'=>'localhost',    'user'=>'root',    'password'=>'',    'database'=>'test',)?>

php 資料庫基類:

<?phpclass db {  public $conn;  public static $sql;  public static $instance=null;  private function __construct(){    require_once('db.config.php');    $this->conn = mysql_connect($db['host'],$db['user'],$db['password']);    if(!mysql_select_db($db['database'],$this->conn)){      echo "失敗";    };    mysql_query('set names utf8',$this->conn);  }  public static function getInstance(){    if(is_null(self::$instance)){      self::$instance = new db;    }    return self::$instance;  }  /**   * 查詢資料庫   */  public function select($table,$condition=array(),$field = array()){    $where='';    if(!empty($condition)){      foreach($condition as $k=>$v){        $where.=$k."='".$v."' and ";      }      $where='where '.$where .'1=1';    }    $fieldstr = '';    if(!empty($field)){      foreach($field as $k=>$v){        $fieldstr.= $v.',';      }       $fieldstr = rtrim($fieldstr,',');    }else{      $fieldstr = '*';    }    self::$sql = "select {$fieldstr} from {$table} {$where}";    $result=mysql_query(self::$sql,$this->conn);    $resuleRow = array();    $i = 0;    while($row=mysql_fetch_assoc($result)){      foreach($row as $k=>$v){        $resuleRow[$i][$k] = $v;      }      $i++;    }    return $resuleRow;  }  /**   * 添加一條記錄   */   public function insert($table,$data){    $values = '';    $datas = '';    foreach($data as $k=>$v){      $values.=$k.',';      $datas.="'$v'".',';    }    $values = rtrim($values,',');    $datas  = rtrim($datas,',');    self::$sql = "INSERT INTO {$table} ({$values}) VALUES ({$datas})";    if(mysql_query(self::$sql)){      return mysql_insert_id();    }else{      return false;    };   }   /**   * 修改一條記錄   */  public function update($table,$data,$condition=array()){    $where='';    if(!empty($condition)){      foreach($condition as $k=>$v){        $where.=$k."='".$v."' and ";      }      $where='where '.$where .'1=1';    }    $updatastr = '';    if(!empty($data)){      foreach($data as $k=>$v){        $updatastr.= $k."='".$v."',";      }      $updatastr = 'set '.rtrim($updatastr,',');    }    self::$sql = "update {$table} {$updatastr} {$where}";    return mysql_query(self::$sql);  }  /**   * 刪除記錄   */   public function delete($table,$condition){    $where='';    if(!empty($condition)){      foreach($condition as $k=>$v){        $where.=$k."='".$v."' and ";      }      $where='where '.$where .'1=1';    }    self::$sql = "delete from {$table} {$where}";    return mysql_query(self::$sql);   }  public static function getLastSql(){    echo self::$sql;  }}$db = db::getInstance();//$list = $db->select('demo',array('name'=>'tom','password'=>'ds'),array('name','password'));//echo $db->insert('demo',array('name'=>'幫客之家','password'=>'123'));//echo $db->update('demo',array("name"=>'xxx',"password"=>'123'),array('id'=>1));echo $db->delete('demo',array('id'=>'2'));db::getLastSql();echo "
";?>

更多關於PHP操作資料庫相關內容感興趣的讀者可查看本站專題:《php+mysql資料庫操作入門教程》、《PHP基於pdo操作資料庫技巧總結》及《php常見資料庫操作技巧匯總》

希望本文所述對大家PHP程式設計有所協助。

您可能感興趣的文章:

  • PHP中資料庫單例模式的實現代碼分享
  • php實現比較全的資料庫操作類
  • php簡單操作mysql資料庫的類
  • PHP實現PDO的mysql資料庫操作類
  • PHP實現的sqlite資料庫連接類
  • PHP+Mysql樹型結構(無限分類)資料庫設計的2種方式執行個體
  • PHP輕量級資料庫操作類Medoo增加、刪除、修改、查詢例子
  • PHP資料庫萬能引擎類adodb配置使用以及執行個體集錦

http://www.bkjia.com/PHPjc/1092844.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1092844.htmlTechArticlePHP基於單例模式實現的資料庫操作基類,php例模式資料庫 本文執行個體講述了PHP基於單例模式實現的資料庫操作基類。分享給大家供大家參考,...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.