ezSQL PHP数据库操作类库 |
本文标签:ezSQL,PHP数据库 ezSQL 下载地址: 下载 : ezSQL 新版本是2.05添加了很多支持,包括 CodeIgniter,MSSQL, PDO 等等 我之前也为 CodeIgniter 写过一次,不过只支持 MySQL 看看使用示例 其实也没什么难度,直接看源代码即可,主要是程序设计的思想很好 。 Example 1 ---------------------------------------------------- // Select multiple records from the database and print them out.. $users = $db->get_results("SELECT name, email FROM users"); foreach ( $users as $user ) { // Access data using object syntax echo $user->name; echo $user->email; } Example 2 ---------------------------------------------------- // Get one row from the database and print it out.. $user = $db->get_row("SELECT name,email FROM users WHERE id = 2"); echo $user->name; echo $user->email; Example 3 ---------------------------------------------------- // Get one variable from the database and print it out.. $var = $db->get_var("SELECT count(*) FROM users"); echo $var; Example 4 ---------------------------------------------------- // Insert into the database $db->query("INSERT INTO users (id, name, email) VALUES (NULL,justin,jv@foo.com)"); Example 5 ---------------------------------------------------- // Update the database $db->query("UPDATE users SET name = Justin WHERE id = 2)"); Example 6 ---------------------------------------------------- // Display last query and all associated results $db->debug(); Example 7 ---------------------------------------------------- // Display the structure and contents of any result(s) .. or any variable $results = $db->get_results("SELECT name, email FROM users"); $db->vardump($results); Example 8 ---------------------------------------------------- // Get one column (based on column index) and print it out.. $names = $db->get_col("SELECT name,email FROM users",0) foreach ( $names as $name ) { echo $name; } Example 9 ---------------------------------------------------- // Same as above ‘but quicker foreach ( $db->get_col("SELECT name,email FROM users",0) as $name ) { echo $name; } Example 10 ---------------------------------------------------- // Map out the full schema of any given database and print it out.. $db->select("my_database"); foreach ( $db->get_col("SHOW TABLES",0) as $table_name ) { $db->debug(); $db->get_results("DESC $table_name"); } $db->debug(); EZSQL类介绍: ezsql是一个小型的快速的数据库操作类,可以让你很容易地用PHP操作各种数据库( MySQL、oracle8/9 、interbase、FireBird、PostgreSQL、MS-SQL、sqlite、sqlite C++) 。 在你的脚本开头是要包含一个一个PHP文件 。然后,你就可以使用更小、更容易的一套ezsql函数来代替标准的PHP数据库函数 。 它会自动缓存的查询结果,提供了一系列简单的函数操作及扩展,并且没有造成额外的服务器开销 它具有优良的调试功能,使你快速的判断SQL语句的执行过程 ezsql函数可以返回的结果是对象,关联数组,或数值数组 它可以大大缩短开发时间,并在大多数情况下,将简化您的代码,让其跑得更快,以及很容易调试和优化您的数据库查询语句 。 这是一个小类,在你的网站上并不会增加很大的开销 。 类中有以下的方法: - $db->get_results – 从数据库中读取数据集 (or 之前缓存的数据集) - $db->get_row — 从数据库中读取一条数据 (or 之前缓存的数据) - $db->get_col – 从数据库中读取一列指定数据集 (or 之前缓存的数据集) - $db->get_var — 从数据库数据集中读取一个值 (or 之前缓存的数据) - $db->query — 执行一条sql语句(如果有数据,就缓存起来) - $db->debug – 打印最后执行的sql语句与返回的结果(如果有结果) - $db->vardump – 打印变量的结构及内容 - $db->select — 选择一个新数据库 - $db->get_col_info – 获取列的信息 - $db->donation – 捐钱给作者用的 - $db->escape – 格式化插入数据库的字符串,eg:mysql_escape_string(stripslashes($str)) - $db->flush – 清除缓存 - $db->get_cache – 换取缓存 - $db->hide_errors – 隐藏错误 - $db->register_error – 注册错误 - $db->show_errors – 显示错误 - $db->store_cache – 存储到缓存 - $db->sysdate – 获取系统时间 - $db = new db — 建立一个新db对象. wordpress对ezsql进行了修改,同时也使其仅适用于mysql wordpress修改后的一些类操作也就是函数如下: function query($query) 这个函数是 WPDB 最基本的函数,$query 为 SQL 语句,提交给数据库查询,结果分二种情况: 1. 如果是 “insert|delete|update|replace”, 返回受影响行数,在 “insert|replace”的情况下,用 $this->insert_id 记录新插入的ID 。 2. 如果是 “select”,用 $this->last_result 记下查询结果集,返回查询到的记录行数 。 function escape($string) 使用反斜线引用字符串,即使用魔术引号 。 function insert($table, $data) 这是插入记录函数,第一个参数是表的字段数组,第二个是数据数组 。插入数据返回1,否则为0 。 function update($table, $data, $where) 这是更新纪录函数,第一个参数是表的字段数组,第二个是数据数组,第三个是条件数组,它是一个 nane array 。更新了为1,否则为0 。 function get_var($query=null, $x = 0, $y = 0) 如果 $query 不为空,首先执行查询,然后返回第 X 列 Y 行的值 。 function get_row($query = null, $output = OBJECT, $y = 0) 返回一行,$outpu 指定返回的类型,可以是 ARRAY_A,ARRAY_N 或者 OBJECT 。$y 指定第几行 。 function get_col($query = null , $x = 0) 返回一列,$x 指定第几列 。 function get_results($query = null, $output = OBJECT) 返回查询结果集,可以以 ARRAY_A,ARRAY_N 或者 OBJECT 三种方式返回 。 function get_col_info($info_type = ‘name, $col_offset = -1) 返回字段信息 。 其他还有一些函数,这里不详细讲了 。另外还有两个全局变量,SAVEQUERIES 和 WP_DEBUG,第一个是,可以让你把访问页面执行的查询把保存到 $this->queries 这个数组中,以后调试的时候使用,WP_DEBUG 则让你把错误输出 。这两个默认都没有打开,你测试的时候可以在 wp_config.php 中将其开启 。 |