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 pack与unpack 摸板字符字符含义
Oct 29 PHP
php去掉字符串的最后一个字符附substr()的用法
Mar 23 PHP
用Php编写注册后Email激活验证的实例代码
Mar 11 PHP
PHP FTP操作类代码( 上传、拷贝、移动、删除文件/创建目录)
May 10 PHP
thinkphp常见路径用法分析
Dec 02 PHP
php实现encode64编码类实例
Mar 24 PHP
ThinkPHP使用Ueditor的方法详解
May 20 PHP
验证token、回复图文\文本、推送消息的实用微信类php代码
Jun 28 PHP
注意!PHP 7中不要做的10件事
Sep 18 PHP
PHP Header用于页面跳转时的几个注意事项
Oct 21 PHP
PHP使Laravel为JSON REST API返回自定义错误的问题
Oct 16 PHP
MacOS下PHP7.1升级到PHP7.4.15的方法
Feb 22 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的FTP学习(四)
2006/10/09 PHP
解析argc argv在php中的应用
2013/06/24 PHP
php记录代码执行时间(实现代码)
2013/07/05 PHP
PHP实现大数(浮点数)取余的方法
2017/02/18 PHP
漂亮的widgets,支持换肤和后期开发新皮肤
2007/04/23 Javascript
Flex通过JS获取客户端IP和计算机名的实例代码
2013/11/21 Javascript
javascript浏览器兼容教程之事件处理
2014/06/09 Javascript
微信JS接口汇总及使用详解
2015/01/09 Javascript
jQuery实现滑动页面固定顶部显示(可根据显示位置消失与替换)
2015/10/28 Javascript
Angular.js中用ng-repeat-start实现自定义显示
2016/10/18 Javascript
js模式化窗口问题![window.dialogArguments]
2016/10/30 Javascript
获取今天,昨天,本周,上周,本月,上月时间(实例分享)
2017/01/04 Javascript
Bootstrap Table使用整理(五)之分页组合查询
2017/06/09 Javascript
web前端开发中常见的多列布局解决方案整理(一定要看)
2017/10/15 Javascript
Angular实现双向折叠列表组件的示例代码
2017/11/21 Javascript
通过函数作用域和块级作用域看javascript的作用域链
2018/08/05 Javascript
详解如何构建Promise队列实现异步函数顺序执行
2018/10/23 Javascript
puppeteer实现html截图的示例代码
2019/01/10 Javascript
vue强制刷新组件的方法示例
2019/02/28 Javascript
JavaScript使用面向对象实现的拖拽功能详解
2019/06/12 Javascript
浅析 Vue 3.0 的组装式 API(一)
2020/08/31 Javascript
解决python3爬虫无法显示中文的问题
2018/04/12 Python
python opencv实现图像边缘检测
2019/04/29 Python
django 使用全局搜索功能的实例详解
2019/07/18 Python
CSS3等相关属性制作分页导航实现代码
2012/12/24 HTML / CSS
HTML5实现桌面通知 提示功能
2017/10/11 HTML / CSS
孕妇装中的著名品牌:Isabella Oliver(伊莎贝拉·奥利弗)
2016/10/31 全球购物
新西兰最大、占有率最高的综合性药房:PharmacyDirect药房中文网
2020/11/03 全球购物
仓库管理专业个人的自我评价
2013/12/30 职场文书
俄语专业职业生涯规划
2014/02/26 职场文书
2014基层党员干部学习全国两会心得体会
2014/03/17 职场文书
交通安全责任书范本
2014/07/24 职场文书
县委务虚会发言材料
2014/10/20 职场文书
小学校园广播稿
2015/08/18 职场文书
七年级生物教学反思
2016/02/20 职场文书
mysql使用FIND_IN_SET和group_concat两个方法查询上下级机构
2022/04/20 MySQL