批改状态:合格
老师批语:
1.连接数据库:
if(!function_exists('cennect'))
{
function connect($dbname,$type='mysqli',$host='127.0.0.1',$user='root',$pass='root',$charset='utf8',$port='3306')
{
/**
* 连接数据库
*/
$dsn = "{$type}:host={$host};dbname={$dbname};charset={$charset};port={$port}";
$userName = $user;
$passWord = $pass;
$option = [
PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION,//错误模式
PDO::ATTR_CASE=>PDO::CASE_NATURAL,//自然名称
PDO::ATTR_EMULATE_PREPARES=>true,//启用模拟功能
PDO::ATTR_PERSISTENT=>true,//持续连接
];
try{
$pdo = new PDO($dsn,$userName,$passWord,$option);
}catch (PDOException $e){
echo '连接失败'.$e->getMessage();
die();
}
return $pdo;
}
}点击 "运行实例" 按钮查看在线实例
2.新增操作:
if(!function_exists('insert'))
{
/**
* @param $pdo
* @param $table
* @param array $data
*/
function insert($pdo,$table,$data=[])
{
//创建sql语句
$sql = "INSERT IGNORE {$table} SET ";
foreach (array_keys($data) as $field){
$sql .= $field.'=:'.$field.',';
}
$sql = rtrim(trim($sql),',').';';
// die($sql);
//创建对象
$stmt = $pdo->prepare($sql);
//绑定参数到预处理对象
foreach ($data as $field=>$value){
$stmt ->bindValue(":{$field}",$value);
}
//执行新增操作
if($stmt->execute()){
if($stmt->rowCount()>0){
return true;
}
}else{
return false;
}
}
}点击 "运行实例" 按钮查看在线实例
3.更新操作:
if(!function_exists('updata'))
{
/**更新操作
* @param $pdo
* @param $table
* @param array $data
* @param $where
*/
function update($pdo,$table,$data=[],$where='')
{
// 创建sql语句
$sql = "UPDATE {$table} SET ";
foreach (array_keys($data) as $field){
$sql .= $field.'=:'.$field.',';
}
$sql = rtrim(trim($sql),',');
//添加更新条件
if(!empty($where)){
$sql .= ' WHERE '.$where;
}else{
exit('条件不能为空');
}
$sql = rtrim(trim($sql),',').';';
// die($sql);
//创建stmt预处理对象
$stmt = $pdo->prepare($sql);
//绑定参数到预处理对象
foreach ($data as $field=>$value){
$stmt->bindValue(":{$field}",$value);
}
//执行更新操作
if($stmt->execute()){
if($stmt->rowCount()>0){
return true;
}
}else{
return false;
}
}
}点击 "运行实例" 按钮查看在线实例
4.单条查询数据:
if(!function_exists('find'))
{
/**单条查询数据
* @param $pdo
* @param $table
* @param array $data
* @param string $where
*/
function find($pdo,$table,$fields,$where='')
{
//创建sql语句
$sql = "SELECT ";
if(is_array($fields)){
foreach ($fields as $field){
$sql .= $field.',';
}
$sql = rtrim(trim($sql),',');
}else if(is_string($fields)){
$sql .= $fields;
}
$sql .= " FROM ".$table;
if(!empty($where)){
$sql .= " WHERE ".$where;
}else{
exit('条件不为空');
}
$sql .= " LIMIT 1 ".';';
// die($sql);
//创建stmt预处理对象
$stmt = $pdo->prepare($sql);
//执行操作
if($stmt ->execute()){
if($stmt->rowCount()>0){
$stmt->setFetchMode(PDO::FETCH_ASSOC);
return $stmt->fetch();
}
}else{
return false;
}
}
}点击 "运行实例" 按钮查看在线实例
5.多条查询数据:
if(!function_exists('select'))
{
/**多条语句查询
* @param $pdo
* @param $table
* @param $fields
* @param string $where
*/
function select($pdo,$table,$fields,$where='',$order='')
{
//准备sql语句
$sql = "SELECT ";
if(is_array($fields)){
foreach ($fields as $field){
$sql .= $field.',';
}
$sql = rtrim(trim($sql),',');
}else if(is_string($fields)){
$sql .= $fields;
}else{
$sql .= $fields;
}
$sql .= " FROM ".$table;
if(!empty($where)){
$sql .= " WHERE ".$where;
}
if(!empty($order)){
$sql .= " ORDER BY ".$order.';';
}
// die($sql);
// //创建stmt预处理对象
$stmt = $pdo->prepare($sql);
//
// //执行操作
if($stmt->execute()){
if($stmt->rowCount()>0){
$stmt->setFetchMode(PDO::FETCH_ASSOC);
return $stmt->fetchAll();
}
}else{
return false;
}
}
}点击 "运行实例" 按钮查看在线实例
6.删除操作:
if (!function_exists('delete')){
function delete($pdo,$table,$where='')
{
/**
* 删除数据
*/
//创建sql 语句
$sql = "DELETE FROM {$table} ";
if(!empty($where)){
$sql .= " WHERE ".$where.';';
}else {
exit('条件不能为空');
}
//die($sql);
//创建stmt预处理对象
$stmt = $pdo->prepare($sql);
//执行操作
if($stmt->execute()){
if($stmt->rowCount()>0){
return true;
}
}else{
return false;
}
}
}点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号