首页 / MYSQL / mysqli 过程化风格
mysqli 过程化风格
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysqli 过程化风格,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4782字,纯文字阅读大概需要7分钟。
内容图文
<?php
/**
*
* @author Administrator
* mysqli_conncet() obj
* mysqli_set_charset() bool
* mysqli_query() mixed 输入bool 输出result_obj
* mysqli_fetch_array() row
* mysqli_fetch_all() all
*/
class DbMysqliManage{
public $link=null;
public $message;
/**
* 操作提示信息
* @param unknown $mes 信息
* @param string $flag 成功与失败标志
* @return boolean
*/
public function getMessage($mes,$flag=false){
if($flag){
$this->message.=‘<div style="color:green;font-size:14px">‘.$mes.‘</div>‘;
return true;
}else{
$this->message.=‘<div style="color:red;font-size:14px">‘.$mes.‘</div>‘;
return false;
}
}
/**
* 初始化link
* @param unknown $host 主机地址
* @param unknown $username 用户
* @param unknown $password 密码
* @param unknown $dbName 数据库名
* @param string $charset 字符集
*/
public function __construct($host,$username,$password,$dbName,$charset=‘utf8‘){
$this->link=mysqli_connect($host,$username,$password,$dbName);
if($this->link===false){
return $this->getMessage(‘数据库连接失败 错误编号‘.mysqli_connect_errno().
‘ 错误信息:‘.iconv(‘gbk‘,‘utf-8‘,mysqli_connect_error()));
}else{
$this->getMessage(‘数据库连接成功‘,true);
}
$char=mysqli_set_charset($this->link, $charset);
if($char===false) return $this->getMessage(‘错误的编码设置 错误编号:‘.
mysqli_errno($this->link).‘ 错误信息: ‘.mysqli_error($this->link));
$this->getMessage(‘编码设置成功‘,true);
}
/**
* 执行增删改语句
* @param unknown $sql sql语句
* @return boolean
*/
public function execSql($sql){
$sql=trim($sql);
$match=preg_match(‘/^(insert|update|delete)/‘, $sql);
if($match===0){
return $this->getMessage(__FUNCTION__.‘()方法只支持增删改操作‘);
}else{
$result=mysqli_query($this->link, $sql);
if($result===false){
return $this->getMessage($sql.‘语句错误 错误编号:‘.
mysqli_errno($this->link).‘ 错误信息: ‘.mysqli_error($this->link));
}else{
return $this->getMessage(‘增删改操作成功‘,true);
}
}
}
/**
* 查询一条记录
* @param unknown $sql sql语句
* @return 失败:boolean|成功:一维数组
*/
public function getOneData($sql){
$sql=trim($sql);
$match=preg_match(‘/^select/‘, $sql);
if($match===0){
return $this->getMessage(__FUNCTION__.‘()方法只支持查询操作‘);
}else{
$result=mysqli_query($this->link, $sql); //mysqli_result对象
if(!is_object($result)){
return $this->getMessage($sql.‘语句错误 错误编号:‘.
mysqli_errno($this->link).‘ 错误信息: ‘.mysqli_error($this->link));
}else{
$row=mysqli_fetch_array($result,MYSQLI_ASSOC);
if(mysqli_fetch_array($result,MYSQLI_ASSOC)) return $this->getMessage(__FUNCTION__.‘()只能查询一条数据 错误编号:‘.
mysqli_errno($this->link).‘ 错误信息: ‘.mysqli_error($this->link));
$this->getMessage(‘查询一条记录成功‘,true);
unset($result);
return $row;
}
}
}
/**
* 查询多条记录
* @param unknown $sql sql语句
* @return 失败:boolean|成功:二位数组
*/
public function getMoreData($sql){
$sql=trim($sql);
$match=preg_match(‘/^select/‘, $sql);
if($match===0){
return $this->getMessage(__FUNCTION__.‘()方法只支持查询操作‘);
}else{
$result=mysqli_query($this->link, $sql); //mysqli_result对象
if(!is_object($result)){
return $this->getMessage($sql.‘语句错误 错误编号:‘.
mysqli_errno($this->link).‘ 错误信息: ‘.mysqli_error($this->link));
}else{
$moreRow=mysqli_fetch_all($result,MYSQLI_ASSOC);
unset($result);
return $moreRow;
}
}
}
/**
* 关闭连接资源
* @return boolean
*/
public function closeDb(){
$close=mysqli_close($this->link);
if($close===false) return $this->getMessage(‘数据库连接关闭失败‘);
return $this->getMessage(‘数据库连接关闭成功‘,true);
}
/**
* 析构函数
*
*/
public function __destruct(){
unset($this->message);
}
}
mysqli 过程化风格
标签:风格 style ini 编号 exec errno font 设置 数组
本文系统来源:http://www.cnblogs.com/liu-zhao/p/6817424.html
内容总结
以上是互联网集市为您收集整理的mysqli 过程化风格全部内容,希望文章能够帮你解决mysqli 过程化风格所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。