这个PHP实现的mysql的操作类完整版已经使用过了,而这个简化版是经过修改完整版后的简化版,适用在一般的 PHP 应用中,功能上可以实现基本的增删改查的操作,以及打印 MYSQL 错误,自我感觉不错,如果网站应用不是很强大,应用这个 MYSQL 的操作类已经足够了。希望对大家有所帮助。
自己封装的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封装Mysql操作类的详细内容。更多信息请关注PHP中文网其他相关文章!

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于架构原理的相关内容,MySQL Server架构自顶向下大致可以分网络连接层、服务层、存储引擎层和系统文件层,下面一起来看一下,希望对大家有帮助。

mysql的msi与zip版本的区别:1、zip包含的安装程序是一种主动安装,而msi包含的是被installer所用的安装文件以提交请求的方式安装;2、zip是一种数据压缩和文档存储的文件格式,msi是微软格式的安装包。

方法:1、利用right函数,语法为“update 表名 set 指定字段 = right(指定字段, length(指定字段)-1)...”;2、利用substring函数,语法为“select substring(指定字段,2)..”。

在mysql中,可以利用char()和REPLACE()函数来替换换行符;REPLACE()函数可以用新字符串替换列中的换行符,而换行符可使用“char(13)”来表示,语法为“replace(字段名,char(13),'新字符串') ”。

转换方法:1、利用cast函数,语法“select * from 表名 order by cast(字段名 as SIGNED)”;2、利用“select * from 表名 order by CONVERT(字段名,SIGNED)”语句。

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于MySQL复制技术的相关问题,包括了异步复制、半同步复制等等内容,下面一起来看一下,希望对大家有帮助。

在mysql中,可以利用REGEXP运算符判断数据是否是数字类型,语法为“String REGEXP '[^0-9.]'”;该运算符是正则表达式的缩写,若数据字符中含有数字时,返回的结果是true,反之返回的结果是false。

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了mysql高级篇的一些问题,包括了索引是什么、索引底层实现等等问题,下面一起来看一下,希望对大家有帮助。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

Dreamweaver CS6
视觉化网页开发工具

记事本++7.3.1
好用且免费的代码编辑器

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境