php实现Mysql简易操作类


Posted in PHP onOctober 11, 2015

自己封装的Mysql简易操作类,已塞在Ben框架中,基于PDO来写的,代码风格上有些无厘头。。。

mysql.class.php

<?php
class mysql extends PDO{
  public $server;
  public $database;
  public $user;
  public $password;
  public $sql;
  public function __construct($server,$database,$user,$password,$port=3306){
    $this->server = $server;
    $this->database = $database;
    $this->user = $user;
    $this->password = $password;
    parent::__construct("mysql:host=$server;port=$port;dbname=$database",$user,$password);
    $this->query('SET NAMES utf8');
  }
  public function drop($table){
    $sql = 'DROP TABLE '.$table.';';
    $re = $this->query($sql);
    if($re){
      return true;
    }else{
      return false;
    }
  }
  public function insert($table,$name,$value=null){
    $sql = "INSERT INTO ".$table.'(';
    if($value == null){
    $arrname = array_keys($name);
    $arrvalue = array_values($name);
    }else{
    $arrname = explode('|', $name);
    $arrvalue = explode('|', $value);
    }
    for($i=0;$i<count($arrname);$i++){
      if($i==count($arrname)-1){
        $sql = $sql.$arrname[$i];
      }else{
        $sql = $sql.$arrname[$i].",";
      }
    }
    $sql = $sql.")VALUES(";
    for($i=0;$i<count($arrvalue);$i++){
      if($i==count($arrvalue)-1){
        $sql = $sql."'".$arrvalue[$i]."'";
      }else{
        $sql = $sql."'".$arrvalue[$i]."',";
      }
    }
    $sql .=");";
    $re = $this->query($sql);
    if($re){
      return true;
    }else{
      return false;
    }
  }
  public function delete($table,$Conditionsname,$Conditionsvalue=null){
    if($Conditionsvalue!=null){
      $sql = "DELETE FROM ".$table." WHERE ".$Conditionsname."='".$Conditionsvalue."';";
    }else{
      $sql = "DELETE FROM ".$table." WHERE ";
      $arrname = array_keys($Conditionsname);
      $arrvalue = array_values($Conditionsname);
      for($i=0;$i<count($arrname);$i++){
        if($i==count($arrname)-1){
          $sql.=$arrname[$i].'='."'".$arrvalue[$i]."'";
        }else{
          $sql.=$arrname[$i].'='."'".$arrvalue[$i]."',";
        }
      }
      $sql.=';';
    }
    $re = $this->query($sql);
    if($re){
      return true;
    }else{
      return false;
    }
  }
  public function select($table,$name,$Conditionsname,$Conditionsvalue=null){
    if($Conditionsvalue!=null){
      $sql = "SELECT ".$name." FROM ".$table." WHERE ".$Conditionsname."='".$Conditionsvalue."';";
    }else{
      $sql = "SELECT ".$name." FROM ".$table." WHERE ";
      $arrname = array_keys($Conditionsname);
      $arrvalue = array_values($Conditionsname);
      for($i=0;$i<count($arrname);$i++){
        if($i==count($arrname)-1){
          $sql.=$arrname[$i].'='."'".$arrvalue[$i]."'";
        }else{
          $sql.=$arrname[$i].'='."'".$arrvalue[$i]."' and ";
        }
      }
      $sql.=';';
    }
    $re = $this->query($sql);
    $row = $re->fetch();
    return $row[$name];
  }
  public function update($table,$name,$value,$Conditionsname,$Conditionsvalue=null){
    if($Conditionsvalue!=null){
      $sql = "UPDATE ".$table." SET ".$name."= '".$value."' WHERE ".$Conditionsname."='".$Conditionsvalue."';";
    }else{
      $sql = "UPDATE ".$table." SET ".$name."= '".$value."' WHERE ";
      $arrname = array_keys($Conditionsname);
      $arrvalue = array_values($Conditionsname);
      for($i=0;$i<count($arrname);$i++){
        if($i==count($arrname)-1){
          $sql.=$arrname[$i].'='."'".$arrvalue[$i]."'";
        }else{
          $sql.=$arrname[$i].'='."'".$arrvalue[$i]."' and ";
        }
      }
      $sql.=';';
    }
    $re = $this->query($sql);
    if($re){
      return true;
    }else{
      return false;
    }
  }
  public function group($table,$name){
    $sql = "SELECT ".$name." FROM ".$table.";";
    $return = array();
    $re = $this->query($sql);
    while($row = $re->fetch(PDO::FETCH_ASSOC)){
      array_push($return,$row[$name]);
    }
    return $return;
  }
  public function fetchall($sql){
    $return = array();
    $re = $this->query($sql);
    while($row = $re->fetch(PDO::FETCH_ASSOC)){
      array_push($return,$row);
    }
    return $return;
  }
}
PHP 相关文章推荐
PHP4实际应用经验篇(3)
Oct 09 PHP
一些PHP写的小东西
Dec 06 PHP
dedecms中常见问题修改方法总结
Mar 21 PHP
php调用dll的实例操作动画与代码分享
Aug 14 PHP
PHP中如何调用webservice的实例参考
Apr 25 PHP
php使用strtotime和date函数判断日期是否有效代码分享
Dec 25 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
Jan 12 PHP
46 个非常有用的 PHP 代码片段
Feb 16 PHP
PHP身份证校验码计算方法
Aug 10 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
Jul 03 PHP
深入解析Laravel5.5中的包自动发现Package Auto Discovery
Sep 13 PHP
PHP正则表达式笔记与实例详解
May 09 PHP
php实现微信公众平台账号自定义菜单类
Oct 11 #PHP
php实现微信公众号无限群发
Oct 11 #PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
Oct 10 #PHP
PHP+Mysql+jQuery文件下载次数统计实例讲解
Oct 10 #PHP
刷新PHP缓冲区为你的站点加速
Oct 10 #PHP
PHP和Mysql中转UTF8编码问题汇总
Oct 10 #PHP
[原创]ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法
Oct 10 #PHP
You might like
用php或asp创建网页桌面快捷方式的代码
2010/03/23 PHP
php中的四舍五入函数代码(floor函数、ceil函数、round与intval)
2014/07/14 PHP
PHP用反撇号执行外部命令
2015/04/14 PHP
jquery 输入框数字限制插件
2009/11/10 Javascript
Firefox中通过JavaScript复制数据到剪贴板(Copy to Clipboard 跨浏览器版)
2013/11/22 Javascript
raphael.js绘制中国地图 地图绘制方法
2014/02/12 Javascript
node.js实现多图片上传实例
2014/06/03 Javascript
每天一篇javascript学习小结(面向对象编程)
2015/11/20 Javascript
谈谈JavaScript类型系统之Math
2016/01/06 Javascript
JQuery插件Marquee.js实现无缝滚动效果
2016/04/26 Javascript
浅谈jquery点击label触发2次的问题
2016/06/12 Javascript
AngularJS学习第二篇 AngularJS依赖注入
2017/02/13 Javascript
详解vue express启动数据服务
2017/07/05 Javascript
three.js中文文档学习之如何本地运行详解
2017/11/20 Javascript
ajax jquery实现页面某一个div的刷新效果
2021/03/04 jQuery
[48:45]Ti4 循环赛第二日 NEWBEE vs EG
2014/07/11 DOTA
Windows和Linux下使用Python访问SqlServer的方法介绍
2015/03/10 Python
深入探究Python中变量的拷贝和作用域问题
2015/05/05 Python
Python如何快速实现分布式任务
2017/07/06 Python
python smtplib模块自动收发邮件功能(一)
2018/05/22 Python
Python读取数据集并消除数据中的空行方法
2018/07/12 Python
python三引号输出方法
2019/02/27 Python
Python PyQt5 Pycharm 环境搭建及配置详解(图文教程)
2019/07/16 Python
纯HTML+CSS3制作导航菜单(附源码)
2013/04/24 HTML / CSS
英国在线房屋中介网站:Yopa
2018/01/09 全球购物
英国设计师泳装、沙滩装和比基尼在线精品店:Beach Cafe
2019/08/28 全球购物
《盲人摸象》教学反思
2014/02/16 职场文书
借款协议书
2014/04/12 职场文书
优秀管理者事迹材料
2014/05/22 职场文书
敬老院献爱心活动总结
2014/07/08 职场文书
收款授权委托书
2014/10/02 职场文书
家长学校教学计划
2015/01/19 职场文书
2016大学生社会实践心得体会范文
2016/01/14 职场文书
小学秋季运动会加油口号及加油稿
2019/08/19 职场文书
深入理解CSS 中 transform matrix矩阵变换问题
2021/08/30 HTML / CSS
全网非常详细的pytest配置文件
2022/07/15 Python