如今的PHP操作数据库,大多都是用mysqli实现的,而且在实现mysqli操作数据库,在电商后台管理,也是非常容易用到的,既然使用的频率那么高,也就只好进行函数库的封装,这里没有用类的方法进行封装,还是简单的用面向结构的方式,统一的归纳了一下:
(1)连接数据库:
function connect(){
@$link = mysqli_connect(DB_HOST,DB_USER,DB_PWD);//连接数据库
mysqli_set_charset($link,DB_CHARSET);//设置数据库字体格式
mysqli_select_db($link,DB_DBNAME) or die('数据库打开失败');//选择数据库
if(mysqli_connect_errno())
{
die('数据库连接失败 : '.mysqli_connect_errno());
}
return $link;
}
(2)插入数据
function insert($link,$table,$array){
$keys = join(',',array_keys($array));
$values = "'".join(',',array_values($array))."'";
$sql = 'insert into {$table}({$keys}) values({$values})';
mysqli_query($link,$sql);
return mysqli_insert_id($link);
}
(3)修改数据
function update($link,$table,$array,$where = null) {
$setstr = '';
foreach ($array as $key => $value)
{
$setstr .= (' '.$key.'='.$value.' ');
if(!$setstr){
$sep = '';
}else{
$sep = ',';
}
$setstr .= $sep.$key.'='."'"$value"'";
}
$sql = "update {$table} set {$setstr}".($where ? 'where '.$where : '');
mysqli_query($link,$sql);
return mysqli_affected_rows($link);
}
(4)删除数据
function delete($link,$table,$where = null)
{
$sql = "delete from {$table}".($where?'where '.$where : '');
mysqli_query($link,$sql);
return mysqli_affected_rows($link);
}
(5)查找一条记录
function fetchOne($link,$sql,$result_type=MYSQLI_ASSOC)
{
$result = mysqli_query($link,$sql);
$row = mysqli_fetch_array($result,$result_type);
return $row;
}
(6)查找多条记录
function fetchAll($link,$sql,$result_type=MYSQLI_ASSOC)
{
$result = mysqli_query($link,$sql);
while(@$row = mysqli_fetch_array($result,$result_type))
{
$row[] = $row;
}
return $row;
}
(7)返回结果集中行的数量
function getResultNum($link,$sql)
{
$result = mysqli_query($link,$sql);
return mysqli_num_rows($result);
}
相关推荐: