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 相关文章推荐
通过文字传递创建的图形按钮
Oct 09 PHP
开启CURL扩展,让服务器支持PHP curl函数(远程采集)
Mar 19 PHP
基于MySQL分区性能的详细介绍
May 02 PHP
解析PHP中数组元素升序、降序以及重新排序的函数
Jun 20 PHP
解析php框架codeigniter中如何使用框架的session
Jun 24 PHP
PHP直接修改表内容DataGrid功能实现代码
Sep 24 PHP
php封装的smartyBC类完整实例
Oct 19 PHP
php中static 静态变量和普通变量的区别
Dec 01 PHP
php判断是否连接上网络的方法实例详解
Dec 14 PHP
php str_replace替换指定次数的方法详解
May 05 PHP
php curl上传、下载、https登陆实现代码
Jul 23 PHP
PHP实现登录注册之BootStrap表单功能
Sep 03 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为表单获取的URL 地址预设 http 字符串函数代码
2010/05/26 PHP
php中使用__autoload()自动加载未定义类的实现代码
2013/02/06 PHP
大家须知简单的php性能优化注意点
2016/01/04 PHP
php array_map使用自定义的函数处理数组中的每个值
2016/10/26 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
PHP使用Redis实现Session共享的实现示例
2019/05/12 PHP
JavaScript 滚轮事件使用说明
2010/03/07 Javascript
js不能跳转到上一页面的问题解决方法
2013/03/01 Javascript
Jquery中使用setInterval和setTimeout的方法
2013/04/08 Javascript
js图片滚动效果时间可随意设定当鼠标移上去时停止
2014/06/26 Javascript
无限树Jquery插件zTree的常用功能特性总结
2014/09/11 Javascript
完美兼容IE,chrome,ff的设为首页、加入收藏及保存到桌面js代码
2014/12/17 Javascript
理解Javascript文件动态加载
2016/01/29 Javascript
给easyui datebox扩展一个清空的实例
2016/11/09 Javascript
BootStrap Table 获取同行不同列元素的方法
2016/12/19 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
微信小程序实现左右联动的实战记录
2018/07/05 Javascript
JS实现可用滑块滑动的缓动图代码
2019/09/01 Javascript
微信js-sdk 录音功能的示例代码
2019/11/01 Javascript
原生JavaScript实现的无缝滚动功能详解
2020/01/17 Javascript
vue使用video插件vue-video-player详解
2020/10/23 Javascript
python编程开发之textwrap文本样式处理技巧
2015/11/13 Python
Python开发中爬虫使用代理proxy抓取网页的方法示例
2017/09/26 Python
Python并发之多进程的方法实例代码
2018/08/15 Python
django实现支付宝支付实例讲解
2019/10/17 Python
python3.6、opencv安装环境搭建过程(图文教程)
2019/11/05 Python
Python使用Matlab命令过程解析
2020/06/04 Python
基于python实现可视化生成二维码工具
2020/07/08 Python
Python爬虫之App爬虫视频下载的实现
2020/12/08 Python
材料员岗位职责
2014/03/13 职场文书
《与朱元思书》的教学反思
2014/04/17 职场文书
乡镇四风对照检查材料
2014/08/31 职场文书
教师学习群众路线心得体会
2014/11/04 职场文书
2014年校务公开工作总结
2014/12/18 职场文书
中学生综合素质自我评价
2015/03/06 职场文书
想要创业,那么你做好准备了吗?
2019/07/01 职场文书