brazucaz/php_database

此包已被废弃且不再维护。未建议替代包。

MySQL数据库控制的完整管理系统

dev-master 2017-12-13 15:54 UTC

This package is not auto-updated.

Last update: 2024-09-15 04:42:01 UTC


README

MySQL数据库控制类的完整管理系统。代码灵感来源于我在GitHub Gist上找到的jonashansen229

我已经扩展了这个类,允许通过SQL命令进行SELECTINSERTUPDATEDELETE操作。所有功能都是模块化的,因此开发者可以轻松获取代码并将其直接插入到他们正在工作的项目中。我并不声称对代码有任何权利或责任。使用风险自负!

入门

现在,正如我上面提到的,我尽量让用户使用起来尽可能简单。所以让我们开始吧:假设你已经使用Composer,你可以通过将其添加到composer.json中的required部分来获取项目。

composer require brazucaz/php_database dev-master

或者你也可以从src文件夹下载类;你可以以任何你觉得合适的方式将其包含在你的项目中。

一旦你在项目中包含了类,只需通过以下方式调用它:

$db = database::get_instance();
$mysqli = $db->get_connection();

现在你可以开始使用类中的函数了。

函数

如我上面提到的,我已经通过创建4个分别用于MySQL和PHP中常用查询的独立函数来扩展了这个类,以管理MySQL数据库。函数如下:

  • Select
  • Insert
  • Update
  • Delete

SELECT

最常见的情况可能是从数据库中选择内容,我确实实现了这一点。Select函数有两个参数,$fields$table

$fields:将请求一个包含每个列名的单维数组

$table:当然,只是表名,一个简单的字符串

$fields = array('id', 'field1', 'field2', '...');
$table = "table_name";

设置好这两个参数后,只需调用该函数即可

$db = database::get_instance();
$mysqli = $db->get_connection();

$select = $db->select($fields, $table);

这将返回一个多维数组,设置如下:

'Column' => 'Row'

我将允许你决定如何使用这些信息。

Insert

与MySQL数据库的另一个常见操作是将新行插入到数据库中。考虑到这一点,我添加了insert()函数。

此函数也有两个强制参数和一个非强制参数insert($content_array, $table, $extra = '');如果查询中有任何额外的参数,如WHERELIMITORDER BY等,则$extra将发挥作用。现在这里有一个问题,$content_array与Select函数中的$fields不同。

$content_array是一个设置为Key => Value的二维数组。而$table——你猜对了。

$content_array = array(
    'Column' => 'Value',
    'Column' => 'Value',
    'Column' => 'Value'
);

$table = 'table_name';

一旦设置好值,你就可以调用函数了

$db = database::get_instance();
$mysqli = $db->get_connection();

$insert = $db->insert($content_array, $table);

如果你需要添加任何查询参数,请将其作为字符串发送

$exta = 'ORDER BY id ASC LIMIT 1';

$insert = $db->insert($content_array, $table, $extra);

返回值是一个设置为二维数组的二维数组

array (
    'is_error' => 'success',
    'message' => 'Message goes here'
)

调用数组——只需使用变量+数组参数。例如:$insert['message'];

Update

update函数与insert函数非常相似。调用函数时,唯一的区别是update有一个额外的参数——$id

因此,而不是解释变量和结果是如何工作的,我将向您展示如何调用该函数

$db = database::get_instance();
$mysqli = $db->get_connection();

$update = $db->update($id, $content_array, $table);

返回值与insert相同。

Delete

最后,是delete函数;这个函数直接且简单;它只有两个参数:$id$table。这将删除列,并返回我们旧的二维数组消息。

$db = database::get_instance();
$mysqli = $db->get_connection();

$delete = $db->delete($id, $table);

这将返回操作是否成功或出现错误。