Mysqli扩展链接数据库工具类

本文介绍了一个使用 PHP 编写的 MySQLi 数据库连接器类,该类实现了单例模式,提供数据库连接配置和基本的数据操作方法,如查询所有数据和执行 SQL 语句。
<?php
class DAOMysqli{
private $_host;
private $_user;
private $_pwd;
private $_database;
private $_port;
private $_charset;


private static $_instance;


private $_mySQLi;


private function __construct($arr){
$this->_host = isset($arr['host'])?$arr['host']:'';
$this->_user = isset($arr['user'])?$arr['user']:'';
$this->_pwd = isset($arr['pwd'])?$arr['pwd']:'';
$this->_database = isset($arr['database'])?$arr['database']:'';
$this->_port = isset($arr['port'])?$arr['port']:'';
$this->_charset = isset($arr['charset'])?$arr['charset']:'';


if($this->_host == '' || $this->_user == '' || $this->_pwd == '' || $this->_database == '' || $this->_port == '' || $this->_charset == ''){
echo '<br> 你输入的连接数据库的信息有误';
exit;
}
$this->_mySQLi = new MySQLi($this->_host,$this->_user,$this->_pwd,$this->_database,$this->_port,$this->_charset);
if($this->_mySQLi->connect_errno){
die('连接失败,错误信息'.$this->_mySQLi->connect_error);
}
}


public static function getSingleton($arr){
if(!self::$_instance instanceof self){
self::$_instance = new self($arr);
}
return self::$_instance;
}


private function __clone(){}


public function fetchAll($sql){
$arr = array();
if($res = $this->_mySQLi->query($sql)){
while($row = $res->fetch_assoc()){
$arr[] = $row;
}
$res->free();
return $arr;
}else{
echo '<br>执行错误 sql = '.$sql;
echo '<br> 错误的信息'.$this->_mySQLi->error;
exit;
}
}
public function query($sql){
if($this->_mySQLi->query($sql)){
return true;
}else{
echo '<br>执行错误 sql = '.$sql;
echo '<br> 错误的信息'.$this->_mySQLi->error;
exit;
}
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值