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

yipeiwu_com7年前PHP代码库

本文实例讲述了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+mysql数据库操作入门教程》、《PHP基于pdo操作数据库技巧总结》、《PHP+MongoDB数据库操作技巧大全》、《php+Oracle数据库程序设计技巧总结》、《php+mssql数据库程序设计技巧总结》、《php+redis数据库程序设计技巧总结》、《php+mysqli数据库程序设计技巧总结》及《php常见数据库操作技巧汇总

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

相关文章

PHP反射原理与用法深入分析

本文实例讲述了PHP反射原理与用法。分享给大家供大家参考,具体如下: 说到反射,实际上包含两个概念: 检视 introspection 判断类、方法是否存在,父子类关系,调用关系等...

PHP人民币金额转大写实例代码

PHP人民币金额转大写,其实质就是数字转换成中文大写,测试了一下,非常有趣,随便输个数字,就可以将其大写打印出来,初学的朋友们试一下吧 //PHP人民币金额转大写 class Ext...

php日期操作技巧小结

本文实例总结了php日期操作技巧。分享给大家供大家参考,具体如下: 1、php将表单里面获取的日期格式转换成统一的格式 2015-9-9 都统一转换成 2015-09-09 这样在数据库...

PHP中获取变量的变量名的一段代码的bug分析

复制代码 代码如下: /** * 获取变量名 * * @param $string * @return $string * * $test = "helo"; * $test2 = "h...

php中神奇的fastcgi_finish_request

听起来可能有些茫然,我们通过几个例子来说明一下: 复制代码 代码如下: <?php echo '例子:'; fastcgi_finish_request(); echo 'To b...