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执行失败,请参看如下信息:; echo
错误代号:.mysql_errno(); echo
错误信息:.mysql_error(); echo
错误语句:.$sql; die(); }else{ return $result; } }}