关于PHP中的mysql数据库操纵,是每个PHP开拓者必需要会的东东,本日乱逛论坛,发明下面的代码直接拷过来,以备后用。
代码来历吾爱破解论坛,代码假如有什么不完美的处所,接待列位PHP大神们在下面的评论处留言交换!
<?
php
/**
* Created by PhpStorm.
* Date: 2017/1/16
* Time: 16:36
*/
class mysql
{
/**
* 报错函数
*
* @param string $error
*/
function err($error){
die("对不起,您的操纵有误,错误原因为:".$error);//die有两种浸染 输出和终止 相当于 echo和exit的组合
}
/**
* 毗连数据库
*
* @param string $dbhost 主机名
* @param string $dbuser 用户名
* @param string $dbpsw 暗码
* @param string $dbname 数据库名
* @param string $dbcharset 字符集/编码
* [url=home.
php?mod=space&uid=155549]@Return[/url] bool 毗连乐成或不乐成
*/
function connect($config){
extract($config);
if(!($con = mysql_connect($dbhost,$dbuser,$dbpsw))){//mysql_connect毗连数据库函数
$this -> err(mysql_error());
}
if(!(mysql_select_db($dbname,$con))){//mysql_select_db选择数据库的函数
$this -> err(mysql_error());
}
mysql_query("set names".$dbcharset);//利用mysql_query 配置编码 名目:mysql_query("set names utf8")
}
/**
* 执行sql语句
*
* @param string $sql
* @return resource 返回执行乐成的资源符或执行失败
*/
function query($sql){
if(!($query = mysql_query($sql))){
$this -> err($sql."<br />".mysql_error());
}else{
return $query;
}
}
/**
* 列表
*
* @param resource $query sql语句通过mysql_query执行出来的资源
* @return array 返回列表数组
*/
function findAll($query){
while($rs = mysql_fetch_array($query,MYSQL_ASSOC)){//mysql_fetch_arrary函数把资源转换成数组,一次转换一行出来
$list[] = $rs;
}
return isset($list)?$list:"";
}
/**
* 找到单条数据
*
* @param resource $query sql语句通过mysql_query执行出来的资源
* @return array 返回单条信息数组
*/
function findOne($query){
$rs = mysql_fetch_array($query,MYSQL_ASSOC);
return $rs;
}
/**
* @param resource $query sql语句通过mysql_query执行出来的资源
* @param int $row
* @param int $filed
* @return 返回指定行的指定字段的值
*/
function findResult($query,$row = 0,$filed = 0){
$rs = mysql_result($query,$row,$filed);
return $rs;
}
/**
* 添加函数
*
* @param string $table 表名
* @param array $arr
* @return int
* 添加数组(包括字段和值的一维数组)
*/
function insert($table,$arr){
//$sql="insert into 表名(多个字段)values(多个值)"
foreach ($arr as $key=>$value){
$value = mysql_real_escape_string($value);
$keyArr[] = "`".$key."`";//把$arr数组中的键名生存到$keyArr[]数组傍边
$valueArr[] = "`".$value."`";//把$arr数组傍边的键值生存到$valueArr傍边,因为值多为字符串,而sql语句内里insert傍边假如是字符串的话要加单引号,所以这个处所要加上单引号
}
$keys = implode(",",$keyArr);//implode函数是把数组组合成字符串 implode(脱离符,数组)
$values = implode(",",$valueArr);
$sql = "insert into ".$table."(".$keys.")values(".$values.")";
$this -> query($sql);//挪用类自身的query(执行)要领执行这条sql语句
return mysql_insert_id();
}
/**
* 修改函数
*
* @param string $table 表名
* @param array $arr
* 修改数组(包括字段和值的一维数组)
* @param string $where 条件
*/
function update($table,$arr,$where){
//update 表名 set 字段=字段值 where....
foreach ($arr as $key=>$value){
$value = mysql_real_escape_string($value);
$keyAndvalueArr[] = "`".$key."`='".$value."'";
$keyAndvalues = implode(",",$keyAndvalueArr);
$sql = "update ".$table." set ".$keyAndvalues." where ".$where;//修改操纵 名目
$this -> query($sql);
}
}
/**
* 删除函数
*
* @param string $table 表名
* @param string $where 条件
*/
function del($table,$where){
$sql = "delete from ".$table." where ".$where;//删除sql语句 名目: delete frome 表名 where 条件
$this -> query($sql);
}
}
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:https://www.heiqu.com/9690.html