个人总结,请忽略
一. 引子
开发的过程中,经常碰到需要连接数据库、对数据库发起查询的情况。有时,我担心数据库连接或者查询失败,所以需要指定最大尝试次数。由于数据库连接和查询在PHP页面中非常普遍,为了避免反反复复地使用循环。我把这些代码封装起来,提供一定的复用性。不过,功能实在太简单了,简单记录一下而已。
二. 代码
1. 构造函数
建立连接需要一个四元组,即(数据库所在的主机,用户名,密码,数据库名)。我把这四者作为我的 DBUtil 类的构造函数的参数,代码如下:
class DBUtil
{
//省略一万行
public $host = "";
public $user = "";
public $pass = "";
public $name = "";
function __construct($dbhost,$dbuser,$dbpass,$dbname)
{
$this->host = $dbhost;
$this->user = $dbuser;
$this->pass = $dbpass;
$this->name = $dbname;
}
//省略一万行
}
2. 最大尝试次数
考虑到发起连接可能需要多次尝试,因此,最大尝试次数视需求而定,因此需要指定连接数据库的最大尝试次数,DBUtil类默认设置最大尝试次数为1;而发起查询也面临同样的问题,所以也需要提供指定最大查询次数的途径。
class DBUtil
{
//省略一万字
public $aMaxTry = array('query'=>1,'connect'=>1);
public function setMaxTry($sType,$iTimes){
$this->aMaxTry[$sType] = (int)$iTimes;
}
//省略一万字
}