php实现的简单数据库操作Model类


Posted in PHP onNovember 16, 2016

本文实例讲述了php实现的简单数据库操作Model类。分享给大家供大家参考,具体如下:

该数据库模型类可实现数据库的增删改查,简化数据库操作。

1. config.php代码:

<?php
 define("HOSTNAME","127.0.0.1");
 define("USERNAME","root");
 define("PASSWORD","");
 define("DATANAME","class");

2. 使用代码:

<?php
 /*
  作者:shyhero
  */
 require("./config.php");
 class Model{
  private $link;
  //构造函数,初始化数据库连接
  public function __construct(){
   $this -> link = mysqli_connect(HOSTNAME,USERNAME,PASSWORD,DATANAME) or die("数据库连接失败");
   mysqli_set_charset($this -> link,"utf8");
  }
  //查找 1.表名 2.条件 3.值 如果不添加条件或者值,就全部查询
  public function find($table="",$key="",$value=""){
   if(!$key||!$value){
    $sql = "select * from {$table}";
   }else{
    $sql = "select * from {$table} where {$key} = '{$value}'";
   }
   $res = mysqli_query($this -> link,$sql);
   $arr = mysqli_fetch_all($res,MYSQLI_ASSOC);
   mysqli_free_result($res);
   return $arr;
  }
  //增加 1.表名 2.需要插入的字段 3.值1
  public function ins($table="",$zd="name,score",$value=""){
   $arr = explode(",",$value);
   $str = "";
   foreach($arr as $k => $v){
    $str .= "'".$v."'".",";
   }
   $str = rtrim($str,",");
   $sql = "insert into {$table}({$zd})values({$str})";
   $res = mysqli_query($this -> link,$sql);
   return mysqli_insert_id($this -> link);
  }
  //修改 1.表名 2.修改字段 3.值 4.条件 5.值
  public function upd($table="",$key="",$value="",$key2="",$value2=""){
   $sql = "update {$table} set {$key}='{$value}' where {$key2}='{$value2}'";
   $res = mysqli_query($this -> link,$sql);
   return mysqli_affected_rows($this -> link);
  }
  //删除 1.表名 2.条件 3.值
  public function del($table="",$key="",$value=""){
   $sql = "delete from {$table} where {$key}='{$value}'";
   $res = mysqli_query($this -> link,$sql);
   return mysqli_affected_rows($this -> link);
  }
  //析构函数
  public function __destruct(){
   if(isset($res))
    mysqli_free_result($res);
   mysqli_close($this -> link);
  }
 }
 $m = new Model();
 //var_dump($m -> find("stu","id"));
 var_dump($m -> ins("stu","name","zhu"));
 //var_dump($m -> upd("stu","name","dujianing","id","1"));
 //var_dump($m -> del("stu","name","li"));
?>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php FPDF类库应用实现代码
Mar 20 PHP
phpinfo 系统查看参数函数代码
Jun 05 PHP
php 魔术函数使用说明
Feb 21 PHP
php常用Output和ptions/Info函数集介绍
Jun 19 PHP
解析mysql 表中的碎片产生原因以及清理
Jun 22 PHP
thinkphp中ajax与php响应过程详解
Dec 08 PHP
php中解析带中文字符的url函数分享
Jan 20 PHP
PHP实现文件上传和多文件上传
Dec 24 PHP
Zend Framework教程之响应对象的封装Zend_Controller_Response实例详解
Mar 07 PHP
Yii编程开发常见调用技巧集锦
Jul 15 PHP
PHP实现的折半查询算法示例
Oct 09 PHP
PHP7 新增功能
Mar 09 PHP
iOS自定义提示弹出框实现类似UIAlertView的效果
Nov 16 #PHP
PHP中串行化用法示例
Nov 16 #PHP
PHP单态模式简单用法示例
Nov 16 #PHP
php实现替换手机号中间数字为*号及隐藏IP最后几位的方法
Nov 16 #PHP
php实现当前页面点击下载文件的实例代码
Nov 16 #PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
Nov 16 #PHP
PHP Header失效的原因分析及解决方法
Nov 16 #PHP
You might like
全国FM电台频率大全 - 8 黑龙江省
2020/03/11 无线电
从MySQL数据库表中取出随机数据的代码
2007/09/05 PHP
重新封装zend_soap实现http连接安全认证的php代码
2011/01/12 PHP
thinkphp3.0 模板中函数的使用
2012/11/13 PHP
Yii实现自动加载类地图的方法
2015/04/01 PHP
PHP getallheaders无法获取自定义头(headers)的问题
2016/03/23 PHP
thinkphp5框架实现的自定义扩展类操作示例
2019/05/16 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
2020/03/30 PHP
使用jQuery的attr方法来修改onclick值
2014/07/07 Javascript
JQuery EasyUI 加载两次url的原因分析及解决方案
2014/08/18 Javascript
JS中对象与字符串的互相转换详解
2016/05/20 Javascript
Three.js快速入门教程
2016/09/09 Javascript
原生js实现省市区三级联动代码分享
2018/02/12 Javascript
详解webpack模块化管理和打包工具
2018/04/21 Javascript
vue中进入详情页记住滚动位置的方法(keep-alive)
2018/09/21 Javascript
Vue实现的父组件向子组件传值功能示例
2019/01/19 Javascript
Vue中nprogress页面加载进度条的方法实现
2020/11/13 Javascript
jquery自定义组件实例详解
2020/12/31 jQuery
Python利用flask sqlalchemy实现分页效果
2020/08/02 Python
快速解决PyCharm无法引用matplotlib的问题
2018/05/24 Python
python爬虫获取百度首页内容教学
2018/12/23 Python
python实现转盘效果 python实现轮盘抽奖游戏
2019/01/22 Python
如何更优雅地写python代码
2019/07/02 Python
使用 PyTorch 实现 MLP 并在 MNIST 数据集上验证方式
2020/01/08 Python
教育系毕业生中文求职信范文
2013/10/06 职场文书
高分子材料与工程专业个人求职信
2013/12/15 职场文书
机关单位动员会主持词
2014/03/20 职场文书
2014年销售员工作总结
2014/12/01 职场文书
教师聘用意向书
2015/05/11 职场文书
2016初一新生军训心得体会
2016/01/11 职场文书
煤矿施工安全协议书
2016/03/22 职场文书
关于MybatisPlus配置双数据库驱动连接数据库问题
2022/01/22 Java/Android
B站评分公认最好看的动漫,你的名字评分9.9,第六备受喜欢
2022/03/18 日漫
Python爬虫网络请求之代理服务器和动态Cookies
2022/04/12 Python
HTML CSS 一个标签实现带动画的抖音LOGO
2022/04/26 HTML / CSS
PHP 时间处理类Carbon
2022/05/20 PHP