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批量生成随机用户名
Jul 10 PHP
Session保存到数据库的php类分享
Oct 24 PHP
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
Dec 19 PHP
php读取纯真ip数据库使用示例
Jan 26 PHP
PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式
May 04 PHP
PHP实现HTML生成PDF文件的方法
Nov 07 PHP
WordPress中注册菜单与调用菜单的方法详解
Dec 18 PHP
简要剖析PHP的Yii框架的组件化机制的基本知识
Mar 17 PHP
Composer设置忽略版本匹配的方法
Apr 27 PHP
解析PHP之提取多维数组指定列的方法
Jan 03 PHP
PHP常用正则表达式精选(推荐)
May 28 PHP
浅谈如何提高PHP代码质量之端到端集成测试
May 28 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
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
2007/03/06 PHP
php使用递归计算文件夹大小
2014/12/24 PHP
javascript DOM编程实例(智播客学习)
2009/11/23 Javascript
javascript开发随笔二 动态加载js和文件
2011/11/25 Javascript
引用 js在IE与FF之间的区别详细解析
2013/11/20 Javascript
Js判断CSS文件加载完毕的具体实现
2014/01/17 Javascript
js跨域访问示例(客户端/服务端)
2014/05/19 Javascript
jquery.cookie.js使用指南
2015/01/05 Javascript
javascript实现简单的鼠标拖动效果实例
2015/04/10 Javascript
JS实现浏览器打印、打印预览示例
2017/02/28 Javascript
Vue.directive()的用法和实例详解
2018/03/04 Javascript
vue2.0 中使用transition实现动画效果使用心得
2018/08/13 Javascript
JavaScript面向对象程序设计创建对象的方法分析
2018/08/13 Javascript
详解ES6中的Map与Set集合
2019/03/22 Javascript
Python实现简单状态框架的方法
2015/03/19 Python
python+pandas分析nginx日志的实例
2018/04/28 Python
Python使用sorted对字典的key或value排序
2018/11/15 Python
Python 多维List创建的问题小结
2019/01/18 Python
基于Python的Post请求数据爬取的方法详解
2019/06/14 Python
使用wxpy实现自动发送微信消息功能
2020/02/28 Python
python GUI库图形界面开发之PyQt5工具栏控件QToolBar的详细使用方法与实例
2020/02/28 Python
Python中用xlwt制作表格实例讲解
2020/11/05 Python
利用python如何实现猫捉老鼠小游戏
2020/12/04 Python
matplotlib之pyplot模块坐标轴标签设置使用(xlabel()、ylabel())
2021/02/22 Python
突袭HTML5之Javascript API扩展2—地理信息服务及地理位置API学习
2013/01/31 HTML / CSS
HTML5实现音频和视频嵌入的方法
2018/08/22 HTML / CSS
Trina Turk官网:美国时装和泳装品牌
2018/06/10 全球购物
What is view? why do we have view?
2012/06/22 面试题
安全检查验收制度
2014/01/12 职场文书
有兼职工作经历的简历自我评价
2014/03/07 职场文书
个人三严三实对照检查材料
2014/09/25 职场文书
四风问题原因分析及整改措施
2014/10/24 职场文书
酒店优秀员工推荐信
2015/03/24 职场文书
手机销售员岗位职责
2015/04/11 职场文书
班干部竞选演讲稿(精选5篇)
2019/09/24 职场文书
sql通过日期判断年龄函数的示例代码
2021/07/16 SQL Server