zoukankan      html  css  js  c++  java
  • mysqli类实例

    <?php
    
    class Mysql {
        private $mysqli;
        private static $ins;
    
        private function __construct(){
            $this->mysqli = new mysqli('192.168.88.10','root','root','blog');
            if(mysqli_connect_errno()) {
                printf('%s',mysqli_connect_error());
                $this->mysqli = false;
                exit;
            }
            $this->mysqli->set_charset('gbk');
        }
    
        public static function getMysql() {
            if(!(self::$ins instanceOf self)) {
                self::$ins = new self();
            }
            return self::$ins;
        }
    
        public function mQuery($sql) {
            return $this->mysqli->query($sql);
        }
    
        public function mGetAll($sql) {
            $rs = $this->mQuery($sql);
            if(!$rs) {
                return false;
            }
            $data = array();
            while($row = $rs->fetch_assoc()) {
                $data[] = $row;
            }
            $rs->close();
            return $data;
        }
    
        public function mGetRow($sql) {
            $rs = $this->mQuery($sql);
            if(!$rs) {
                return false;
            }
            $row = $rs->fetch_assoc();
            $rs->close();
            return $row;
        }
    
        public function mGetOne($sql) {
            $rs = $this->mQuery($sql);
            if(!$rs) {
                return false;
            }
            $row = $rs->fetch_row();
            $rs->close();
            return $row[0];
        }
        
        /*
            insert into cat(catname,num) values('aa',0);
            update cat set catname='aa',num=900 where cat_id = 10;
        */
        public function mExec($table,$data,$act='insert',$where='0') {
            
            $sql = '';
            if($act == 'insert') {
                $sql .= 'insert into '.$table .'(';
                $sql .= implode(',',array_keys($data)).') ';
                $sql .= ' values("';
                $sql .= implode('","',array_values($data)).'")';
            }elseif($act == 'update') {
                $sql .= 'update '.$table.' set ';
                foreach($data as $k=>$v) {
                    $sql .= $k.'="'.$v.'",';
                }
                $sql = rtrim($sql,',');
                $sql .= ' where '.$where;
            }
    
            return $this->mQuery($sql);
        }
    
        public function close(){
            if($this->mysqli) {
                $this->mysqli->close();
            }
        }
    
        public function __destruct() {
            $this->close();
        }
    }
    
    /*
    header('Content-type:text/html;charset=gbk');
    $db = Mysql::getMysql();
    //$sql = 'select count(*) from cat where cat_id = 1';
    //var_dump($db->mGetOne($sql));
    $data = array('catname'=>'testaa','num'=>100);
    
    $db->mExec('cat',$data,'update','cat_id=1');
    
    */
    

      

  • 相关阅读:
    [LeetCode] 314. Binary Tree Vertical Order Traversal
    [LeetCode] 139. Word Break
    [LeetCode] 540. Single Element in a Sorted Array
    [LeetCode] 1443. Minimum Time to Collect All Apples in a Tree
    [LeetCode] 1442. Count Triplets That Can Form Two Arrays of Equal XOR
    [LeetCode] 1441. Build an Array With Stack Operations
    [LeetCode] 277. Find the Celebrity
    [LeetCode] 1232. Check If It Is a Straight Line
    [LeetCode] 10. Regular Expression Matching
    [LeetCode] 1192. Critical Connections in a Network
  • 原文地址:https://www.cnblogs.com/yc12/p/11334602.html
Copyright © 2011-2022 走看看