Maison >développement back-end >tutoriel php >php面向对象思想设计Mysql数据库操作类

php面向对象思想设计Mysql数据库操作类

WBOY
WBOYoriginal
2016-06-20 12:31:44767parcourir

<?php/*1.该类一实例化,就可以自动连接上mysql数据库  2.该类可以单独去设定要使用的连接编码  3.该类可以单独去设定要使用的数据库  4.可以主动关闭连接*/class MysqlDB{   private $link=null;                         //服务器地址,端口号,用户名,密码,编码,数据库名私有化   private $host;   private $port;   private $user;   private $password;   private $charset;   private $dbname;   //实例化就会自动连接数据库   private function __construct($config)   {      $this->host=!empty($config['host'])? $config['host']:"localhost";      $this->port=!empty($config['port'])? $config['port']:"3306";      $this->user=!empty($config['user'])? $config['user']:"root";      $this->password=!empty($config['password'])? $config['password']:"";      $this->charset=!empty($config['charset'])? $config['charset']:"utf8";      $this->dbname=!empty($config['dbname'])? $config['dbname']:"";      $this->link= mysql_connect      ("{$this->host}:{$this->port}", "{$this->user}","{$this->password}")      or die('执行失败');      $this->setCharset($this->charset);      $this->useDBname($this->dbname);   }   //单例设计模式   static $temp=null;   static function getClass(){      if(!isset(self::$temp)){         $class=new self();      }else{         return self::$temp;      }   }   //可以设定编码   function setCharset($charset){      mysql_query("set names $charset");   }   //可以设定要连接的数据库   function useDBname($dbname){      mysql_query("use $dbname");   }   //可以关闭数据库   function closeDB(){      mysql_close($this->link);      echo"关闭成功!";   }   //执行一条增删改语句,返回真假结果   function exec($sql){      $result=$this->query($sql);         return true;      }   //返回一行的查询数据   function gerRow($sql){      $result=$this->query($sql);         $array=mysql_fetch_array($result);      mysql_free_result($result);//释放资源         return $array;      }   //返回多行的查询数据   function getRows($sql){      $result=$this->query($sql);         $arr=array();         while($array=mysql_fetch_array($result)){            $arr[]=$array;         }         mysql_free_result($result);//释放资源         return $arr;      }   //返回一个数据的语句,可以返回一个直接值   function getOneData($sql){      $result=$this->query($sql);      $array=mysql_fetch_array($result);      $data=$array[0];      mysql_free_result($result);//释放资源      return $data;   }   //可以执行任何sql语句,并进行错误处理,或返回执行结果   function query($sql){      $result=mysql_query($sql,$this->link);      if($result===false){         echo"<h2>执行失败,请参看如下信息:";         echo"<br/>错误代号:".mysql_errno();         echo"<br/>错误信息:".mysql_error();         echo"<br/>错误语句:".$sql;         die();      }else{         return $result;      }   }}


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn