WordPress的数据库操作类ezSQL

WordPress的数据库操作类ezSQL。
ezSQL是一个非常好用的PHP数据库操作类。著名的开源博客WordPress的数据库操作就使用了ezSQL的MySQL部分。该数据库操作类支持几乎所有主流的数据库,如:PHP-PDO, mySQL, Oracle, InterBase/FireBird, PostgreSQL, SQLite以及MS-SQL等。ezSQL具有很强的调试功能,可以快速地查看SQL代码的执行情况。使用ezSQL,可以为我们节省开发时间、简化代码并提高运行效率。

ezSQL的优点就不用多说了,它小巧、快速、简单、易用、并且开源。还有就是安全,你没想到的细节它都为你考虑了。你只需要在你的脚本开头包含相关的PHP文件,然后你就可以使用更好用的一套ezSQL函数来代替标准的PHP数据库操作函数。

下面是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 — 显示错误。

ezSQL的使用方法很简单,首先下载ezSQL源代码,然后将ez_sql_core.php文件和ez_sql_mysql.php文件(这里以mySQL为例)放到与你的脚本文件相同的目录下,然后将下面的代码添加到你的脚本文件的最前面,这样就可以正常使用ezSQL了。

<?php
// 包含ezSQL的核心文件
include_once "ez_sql_core.php";

// 包含ezSQL具体的数据库文件,这里以mySQL为例
include_once "ez_sql_mysql.php";

// 初始化数据库对象并建立数据库连接
$db = new ezSQL_mysql('db_user','db_password','db_name','db_host');
?>

下面是ezSQL中一些主要函数的应用实例,这些代码均来自于ezSQL的官方帮助文档。

实例一:

// 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;
}

实例二:

// 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;

实例三:

$var = $db->get_var(“SELECT count(*) FROM users”);echo $var;

// Get one variable from the database and print it out..
$var = $db->get_var("SELECT count(*) FROM users");
echo $var;

实例四:

// Insert into the database
$db->query("INSERT INTO users (id, name, email) VALUES (NULL,'justin','jv@foo.com')");

实例五:

// Update the database
$db->query("UPDATE users SET name = 'Justin' WHERE id = 2)");

实例六:

// Display last query and all associated results
$db->debug();

实例七:

// Display the structure and contents of any result(s) .. or any variable
$results = $db->get_results("SELECT name, email FROM users");
$db->vardump($results);

实例八:

// 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;
}

实例九:

// Same as above ‘but quicker’
foreach ( $db->get_col("SELECT name,email FROM users",0) as $name ) {
    echo $name;
}

实例十:

// 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();

官方网站:http://justinvincent.com/ezsql

源码下载:https://github.com/jv2222/ezSQL

发表评论

电子邮件地址不会被公开。 必填项已用*标注