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 相关文章推荐
将PHP作为Shell脚本语言使用
Oct 09 PHP
php扩展ZF――Validate扩展
Jan 10 PHP
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
Dec 06 PHP
使用php 获取时间今天明天昨天时间戳的详解
Jun 20 PHP
php使用mb_check_encoding检查字符串在指定的编码里是否有效
Nov 07 PHP
php使用cookie保存登录用户名的方法
Jan 26 PHP
php实现在服务器端调整图片大小的方法
Jun 16 PHP
Laravel给生产环境添加监听事件(SQL日志监听)
Jun 19 PHP
Yii2 队列 shmilyzxt/yii2-queue 简单概述
Aug 02 PHP
PHP通过文件路径获取文件名的实例代码
Oct 14 PHP
PHP实现的杨辉三角求解算法分析
Mar 11 PHP
解决windows上php xdebug 无法调试的问题
Feb 19 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程序中使用adodb连接不同数据库的代码实例
2015/12/19 PHP
thinkphp项目部署到Linux服务器上报错“模板不存在”如何解决
2016/04/27 PHP
php中青蛙跳台阶的问题解决方法
2018/10/14 PHP
PHP+百度AI OCR文字识别实现了图片的文字识别功能
2019/05/08 PHP
JavaScript 动态创建VML的方法
2009/10/14 Javascript
JQuery 操作select标签实现代码
2010/05/14 Javascript
Extjs中RowExpander控件的默认展开问题示例探讨
2014/01/24 Javascript
禁用Tab键JS代码兼容Firefox和IE
2014/04/18 Javascript
简介可以自动完成UI的AngularJS工具angular-smarty
2015/06/23 Javascript
JS实现的简洁二级导航菜单雏形效果
2015/10/13 Javascript
JavaScript数组实现数据结构中的队列与堆栈
2016/05/26 Javascript
Extjs表单输入框异步校验的插件实现方法
2017/03/20 Javascript
vue如何将v-for中的表格导出来
2018/05/07 Javascript
angular.js实现列表orderby排序的方法
2018/10/02 Javascript
基于vue实现移动端圆形旋钮插件效果
2018/11/28 Javascript
JS根据json数组多个字段排序及json数组常用操作
2019/06/06 Javascript
使用preload预加载页面资源时注意事项
2020/02/03 Javascript
nodejs中使用worker_threads来创建新的线程的方法
2021/01/22 NodeJs
使用python调用浏览器并打开一个网址的例子
2014/06/05 Python
Python判断两个对象相等的原理
2017/12/12 Python
详解python 拆包可迭代数据如tuple, list
2017/12/29 Python
django如何自己创建一个中间件
2019/07/24 Python
解决Django删除migrations文件夹中的文件后出现的异常问题
2019/08/31 Python
python模块hashlib(加密服务)知识点讲解
2019/11/25 Python
django 装饰器 检测登录状态操作
2020/07/02 Python
HTML5本地存储和本地数据库实例详解
2017/09/05 HTML / CSS
关于h5中的fetch方法解读(小结)
2017/11/15 HTML / CSS
初中生评语大全
2014/04/24 职场文书
家长建议怎么写
2014/05/15 职场文书
2014教师党员自我评议(5篇)
2014/09/20 职场文书
逃课检讨书
2015/01/26 职场文书
听证通知书
2015/04/24 职场文书
欧也妮葛朗台读书笔记
2015/06/30 职场文书
Pandas自定义选项option设置
2021/07/25 Python
Go语言基础函数基本用法及示例详解
2021/11/17 Golang
如何解决php-fpm启动不了问题
2021/11/17 PHP