【知识必备】ezSQL,最好用的数据库操作类,让php操作sql更简单~
最近用php做了点小东东,用上了ezSQL,感觉真的很ez,所以拿来跟大家分享一下~
ezSQL是一个非常好用的PHP数据库操作类。著名的开源博客WordPress的数据库操作就使用了ezSQL的MySQL部分。该数据库操作类支持几乎所有主流的数据库,如:PHP-PDO, mySQL, Oracle, InterBase/FireBird, PostgreSQL, SQLite以及MS-SQL等。ezSQL具有很强的调试功能,可以快速地查看SQL代码的执行情况。使用ezSQL,可以为我们节省开发时间、简化代码并提高运行效率。
ezSQL的优点就不用多说了,它小巧、快速、简单、易用、并且开源。还有就是安全,你没想到的细节它都为你考虑了。
怎么用呢,首先你得去下载:https://github.com/ezSQL/ezSQL
然后把文件目录下的mysql(这里以mysql为例)和share两个文件夹一并复制到你的脚本文件相同的文件路径下。

你只需要在你的脚本开头包含相关的PHP文件,然后你就可以使用更好用的一套ezSQL函数来代替标准的PHP数据库操作函数。
//包含ezSQL的核心文件
include_once 'ez_sql_core.php'; //包含ezSQL具体的数据库文件,这里以mysql为例
include_once 'ez_sql_mysql.php'; // 初始化数据库对象并建立数据库连接
$db = new ezSQL_mysql(DB_USER,DB_PWD,DB_NAME,DB_HOST);
先给大家带来ezSQL中的一些主要函数:
$db->get_results -- 从数据库中读取数据集。
$db->get_row -- 从数据库中读取一行数据。
$db->get_col -- 从数据库中读取一列指定的数据集。
$db->get_var -- 从数据库的数据集中读取一个值。
$db->query -- 执行一条SQL语句。
$db->debug -- 打印最后执行的SQL语句及其返回的结果。
$db->vardump -- 打印变量的结构及其内容。
$db->select -- 选择一个新数据库。
$db->get_col_info -- 获取列的信息。
$db->hide_errors -- 隐藏错误。
$db->show_errors -- 显示错误。
下面给大家做一些实例测试:
1)取数组
$users = $db->get_results("select * from aiya_user");
foreach ($users as $user){
echo $user->username;
echo '<br/>';
echo $user->password;
echo '<br/>';
echo '<br/>';
}
运行效果

2)取对象
// 取对象
$user = $db->get_row ( "select * from aiya_user where username = '1568080225'" );
if ($user != null){
echo $user->username;
echo '<br/>';
echo $user->password;
echo '<br/>';
}else{
echo "没有值";
}
当值不存在的时候返回:

当有值的时候返回:

3)取数值:
// 取数值
$var = $db->get_var("select password from aiya_user where username = '15680802251'");
echo $var;
运行结果为:

4)插入值到数据库
//插入值到数据库
$db->query("insert into aiya_user (username,password,nickname) values ('123456','123456','测试者账号')");
数据库查询插入是成功的

5)更新数据库信息
//更新数据信息
$db->query("update aiya_user set password = '123' where username = '123456'");
可以看到数据库中信息已经更新

6)采用ezSQL打印
// 用ezSQL的打印方式
$result = $db->get_results("select * from aiya_user");
$db->vardump($result);
运行后可见

今天就先介绍到这里,后续会持续更新哦~
【知识必备】ezSQL,最好用的数据库操作类,让php操作sql更简单~的更多相关文章
- 3.NetDh框架之缓存操作类和二次开发模式简单设计(附源码和示例代码)
前言 NetDh框架适用于C/S.B/S的服务端框架,可用于项目开发和学习.目前包含以下四个模块 1.数据库操作层封装Dapper,支持多种数据库类型.多库实例,简单强大: 此部分具体说明可参考博客: ...
- C#EXCEL 操作类--C#ExcelHelper操作类
主要功能如下1.导出Excel文件,自动返回可下载的文件流 2.导出Excel文件,转换为可读模式3.导出Excel文件,并自定义文件名4.将数据导出至Excel文件5.将指定的集合数据导出至Exce ...
- SQL SERVER C#数据库操作类(连接、执行SQL)
using System; using System.Collections; using System.Collections.Specialized; using System.Data; usi ...
- C#全能数据库操作类及调用示例
C#全能数据库操作类及调用示例 using System; using System.Data; using System.Data.Common; using System.Configuratio ...
- Util应用程序框架公共操作类(八):Lambda表达式公共操作类(二)
前面介绍了查询的基础扩展,下面准备给大家介绍一些有用的查询封装手法,比如对日期范围查询,数值范围查询的封装等,为了支持这些功能,需要增强公共操作类. Lambda表达式公共操作类,我在前面已经简单介绍 ...
- Java大数操作类
Java的大数操作分为BigInteger和BigDecimal,但这两给类是分开使用的,有时候在编程的时候显得略微繁琐,现在编写了一个将二者合二为一的大数操作类. 大数操作类代码如下: packag ...
- 数字(数学)操作类 Math Random 类 ,大数字操作类
Math 提供了大量的数学操作方法 Math类中所有的方法都是static 方法
- C#注册表操作类--完整优化版
using System; using System.Collections.Generic; using System.Text; using Microsoft.Win32; namespace ...
- C#注册表操作类(完整版) 整理完整
/// <summary> /// 注册表基项静态域 /// /// 主要包括: /// 1.Registry.ClassesRoot 对应于HKEY_CLASSES_ROOT主键 /// ...
随机推荐
- Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数
上一篇:Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数 之前介绍了简单的路由以及传参,这篇文章我们将要学习复杂一些的路由以及传递其他附加参数.一个好的路由系统可以使我们 ...
- 浅谈 jQuery 核心架构设计
jQuery对于大家而言并不陌生,因此关于它是什么以及它的作用,在这里我就不多言了,而本篇文章的目的是想通过对源码简单的分析来讨论 jQuery 的核心架构设计,以及jQuery 是如何利用javas ...
- XStream将java对象转换为xml时,对象字段中的下划线“_”,转换后变成了两个的解决办法
在前几天的一个项目中,由于数据库字段的命名原因 其中有两项:一项叫做"市场价格"一项叫做"商店价格" 为了便于区分,遂分别将其命名为market ...
- EC笔记:第4部分:22、所有成员都应该是private的
EC笔记:第4部分:22.所有成员都应该是private的 更简单的访问 用户不用记得什么时候该带上括号,什么时候不用带上括号(因为很确定的就要带上括号) 访问限制 对于public的成员变量,我们可 ...
- JavaScript将字符串中的每一个单词的第一个字母变为大写其余均为小写
要求: 确保字符串的每个单词首字母都大写,其余部分小写. 这里我自己写了两种方法,或者说是一种方法,另一个是该方法的变种. 第一种: function titleCase(str) { var new ...
- 新技术≠颠覆:CIO 要有战略耐心
新技术≠颠覆:CIO 要有战略耐心 大数据,云时代,互联网思维, 物联网--最近一两年,这些字眼一次次地出现在各种大大小小的CIO会议上和他们的私下交流圈子里,作为对新技术最敏感的人群,一方面他们迫切 ...
- 易用BPM时代,企业如何轻松驾驭H3?
众所周知,BPM作为企业发展的推动力,能敏捷高效的融合业务流程和信息资源.通过综合考虑流程的成本.效率.质量等方面因素,用IT系统将调整后的流程固化下来,从而降低企业管理成本,提高内部运营效率,提升企 ...
- Web开发安全之文件上传安全
很长一段时间像我这种菜鸡搞一个网站第一时间反应就是找上传,找上传.借此机会把文件上传的安全问题总结一下. 首先看一下DVWA给出的Impossible级别的完整代码: <?php if( iss ...
- Android使用静默安装时碰见的问题
升级时碰见的异常 private void installPackage(String appName,final File apk) { if (!apk.exists()) { setHasNew ...
- Ubuntu 16.04 安装 arm-linux-gcc 嵌入式交叉编译环境 问题汇总
闲扯: 实习了将近半年一直在做硬件以及底层的驱动,最近要找工作了发现了对linux普遍要求很高,而且工作岗位也非常多,所以最近一些时间在时不时地接触linux. 正文:(我一时兴起开始写博客,准备不充 ...