问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

php封装好的mysql操作库吗

发布网友 发布时间:2022-04-23 07:37

我来回答

2个回答

热心网友 时间:2022-04-07 06:37

php封装好的mysql操作库
类文件mysql.class.php:
<?php

class Mysql{

//数据库连接返回值
private $conn;

/**
* [构造函数,返回值给$conn]
* @param [string] $hostname [主机名]
* @param [string] $username[用户名]
* @param [string] $password[密码]
* @param [string] $dbname[数据库名]
* @param [string] $charset[字符集]
* @return [null]

*/

function __construct($hostname,$username,$password,$dbname,$charset='utf8'){
$config = @mysql_connect($hostname,$username,$password);
if(!$config){
echo '连接失败,请联系管理员';
exit;
}
$this->conn = $config;
$res = mysql_select_db($dbname);
if(!$res){
echo '连接失败,请联系管理员';
exit;
}
mysql_set_charset($charset);
}
function __destruct(){
mysql_close();
}
/**
* [getAll 获取所有信息]
* @param [string] $sql [sql语句]
* @return [array] [返回二维数组]
*/
function getAll($sql){
$result = mysql_query($sql,$this->conn);
$data = array();
if($result && mysql_num_rows($result)>0){
while($row = mysql_fetch_assoc($result)){
$data[] = $row;
}
}
return $data;
}
/**
* [getOne 获取单条数据]
* @param [string] $sql [sql语句]
* @return [array] [返回一维数组]
*/
function getOne($sql){
$result = mysql_query($sql,$this->conn);
$data = array();
if($result && mysql_num_rows($result)>0){
$data = mysql_fetch_assoc($result);
}
return $data;
}

/**
* [getOne 获取单条数据]
* @param [string] $table [表名]
* @param [string] $data [由字段名当键,属性当键值的一维数组]
* @return [type] [返回false或者插入数据的id]
*/

function insert($table,$data){
$str = '';
$str .="INSERT INTO `$table` ";
$str .="(`".implode("`,`",array_keys($data))."`) ";
$str .=" VALUES ";
$str .= "('".implode("','",$data)."')";
$res = mysql_query($str,$this->conn);
if($res && mysql_affected_rows()>0){
return mysql_insert_id();
}else{
return false;
}
}
/**
* [update 更新数据库]
* @param [string] $table [表名]
* @param [array] $data [更新的数据,由字段名当键,属性当键值的一维数组]
* @param [string] $where [条件,‘字段名’=‘字段属性’]
* @return [type] [更新成功返回影响的行数,更新失败返回false]
*/
function update($table,$data,$where){
$sql = 'UPDATE '.$table.' SET ';
foreach($data as $key => $value){
$sql .= "`{$key}`='{$value}',";
}
$sql = rtrim($sql,',');
$sql .= " WHERE $where";
$res = mysql_query($sql,$this->conn);
if($res && mysql_affected_rows()){
return mysql_affected_rows();
}else{
return false;
}
}

/**
* [delete 删除数据]
* @param [string] $table [表名]
* @param [string] $where [条件,‘字段名’=‘字段属性’]
* @return [type] [成功返回影响的行数,失败返回false]
*/
function del($table,$where){
$sql = "DELETE FROM `{$table}` WHERE {$where}";
$res = mysql_query($sql,$this->conn);
if($res && mysql_affected_rows()){
return mysql_affected_rows();
}else{
return false;
}
}
}
?>
使用案例:
<?php
//包含数据库操作类文件
include 'mysql.class.php';
//设置传入参数
$hostname='localhost';
$username='root';
$password='123456';
$dbname='aisi';
$charset = 'utf8';
//实例化对象
$db = new Mysql($hostname,$username,$password,$dbname);
//获取一条数据
$sql = "SELECT count(as_article_id) as count FROM as_article where as_article_type_id=1";
$count = $db->getOne($sql);
//获取多条数据
$sql = "SELECT * FROM as_article where as_article_type_id=1 order by as_article_addtime desc limit $start,$limit";
$service = $db->getAll($sql);
//插入数据
$arr = array(
'as_article_title'=>'数据库操作类',
'as_article_author'=>'rex',
);
$res = $db->insert('as_article',$arr);
//更新数据
$arr = array(
'as_article_title'=>'实例化对象',
'as_article_author'=>'Lee',
);
$where = "as_article_id=1";
$res = $db->update('as_article',$arr,$where);
//删除数据
$where = "as_article_id=1";
$res = $db->del('as_article',$where);
?>

热心网友 时间:2022-04-07 07:55

推荐你看下thinkphp框架,内置封装了数据库类,增删改查都是一个命令就可以解决!
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
孤胆枪手怎么设置局域网啊、 我家小狗刚领来,没有名字,拜托大家起个名字。 护肤品代加工 水浒Q传跨服PK是怎么回事啊 新水浒Q传什么叫PK保护状态,上号不到一分钟就被打,求解 水浒Q传 为什么要pk有什么好处? 为什么贷款每次都审核失败 有谁能说一下手机贷审核不通过的原因吗?我都审核好多次了都不能通过... 贷款审核失败是什么原因 为什么贷款未通过审核 快贷app怎么成功申请快贷,有什么技巧 黑月ADODB数据库操作类模块怎么连接MYSQL 怎么样能消除黑眼圈? 黑裤子掉色,怎么办。如何恢复黑色? 快贷app到底怎么样?安全系数高不高?是不是正规的公司? 裤子掉色怎么办 裤子掉色怎么处理 ubuntu下怎样操作mysql数据库 用C语言如何对MySQL数据库进行操作 mysql操作类中的数据库连接对象需要用一个静态属性来表示吗 怎么样可以快速消除黑眼圈??? mysql数据库用怎么操作 掉色的裤子如何处理 come over 的意思 英语comeover是什么意思? 裤子掉色怎么办,怎么补色? 问个英语问题, 关于英语 come over come over 和come over to 的区别是什么 翻译一下用红笔勾的句子,并说明一下come over在这里什么意思 come over 什么意思? come over是什么意思?? 裤子掉色怎么办? 如何使用MySQL WorkBench操作MySQL数据库 通过快贷APP借了3000元的小额贷款,逾期不还的话,有什么后果? 请各位大侠帮帮忙(关于MYSQL数据库) 快贷属于正规的贷款公司吗? 如何在Java程序中访问mysql数据库中的数据并进行简单的操作 快贷还款总提示系统进行批处理,明天到期了,会逾期吗? 快贷APP我这个月还了最后一期就还完了,但是身份证已经过期了 还能再借? java连接数据库(mysql)写入和读取的类怎么写,请带详细注释 MySQL数据库是什么? 谁告诉我下 discuz的数据库操作类 是哪些,在哪几个文件中,???_百度... mysql数据库如何分类? 如何用shell脚本实现mysql数据库的操作 PHP访问MYSQL数据库封装类(附函数说明) 快贷app怎样通过审核? 快贷APP怎么样?快贷靠谱吗?99贷 请问下,快贷app到底怎么样?安全系数高不高?是不是正规的公司?谢谢 在(快贷)app借款3000两个月利息要600 这是属于黑色高利贷吗 快贷APP是个流氓软件!利息很高,手续费高!提前还款还要算你违约,还 有没有被飞鱼快贷套路过的