elvis-leite/recordset-database

这是一个用于管理数据库连接和构建PHP查询的简单库。

v1.2 2023-11-06 21:12 UTC

This package is auto-updated.

Last update: 2024-09-17 12:05:42 UTC


README

这是一个用于管理数据库连接和构建PHP查询的简单库。

Composer链接

描述

这个库旨在通过Mysqli促进PHP与数据库之间的交互。它提供了数据库连接、查询执行、记录选择、插入的方法。

改进的PHP数据库操作代码 此代码示例展示了如何使用RecordSetDatabase库执行各种数据库操作。以下是代码每个部分的功能概述

  • 包含库
    您需要包含库的自动加载文件才能访问其功能。

  • 导入RecordSetDatabase类:使用use语句导入RecordSetDatabase类以方便访问。

  • 数据库凭证:在提供的变量中设置数据库凭证(主机、用户名、密码、数据库名称和字符集)。

  • 选择方法:使用select方法根据条件(如where子句、order by子句和limit子句)从表中选择数据。使用DataGenerator方法遍历数据并显示结果。

  • 查询方法:使用Execute方法执行自定义SQL查询,并以类似的方式检索结果。

  • 日期格式化的数据生成器:使用formFld方法格式化日期值并显示结果。

  • 插入数据:将新记录插入数据库并接收插入记录的ID。

  • 更新数据:更新数据库中的记录并获取一个布尔值结果,指示成功或失败。

  • 删除数据:从数据库中删除记录并获取一个布尔值结果,指示成功或失败。

要求 此库需要PHP 8.0或更高版本才能正确运行。

在使用代码之前,请确保您满足此要求。

用法

安装

composer require elvis-leite/recordset-database

要使用此库,只需遵循以下示例

数据库

<?php

// Include the library's autoload file
require 'vendor/autoload.php';

// Import the RecordSetDatabase class
use RecordSetDatabase\RecordSetDatabase;

// Database Credentials
$DB_HOSTNAME = 'localhost';
$DB_USERNAME = 'database';
$DB_PASSWORD = 'root';
$DB_DATABASE = 'pass';
$DB_CHARSET = 'utf8';

// Creating a RecordSetDatabase instance
$rs = new RecordSetDatabase();

// Generating data with the Select method
$rs->Select('table_name', 'where_clause', 'order_clause', 'limit_clause');

while ($rs->DataGenerator()) {
    echo '<tr><td>' . $rs->fld('table_field') . '</td></tr>';
}

// Generating data with a Query
$rs = new RecordSetDatabase();
$sql = "select * from table_name";
$rs->Execute($sql);

while ($rs->DataGenerator()) {
    echo '<tr><td>' . $rs->fld('table_field') . '</td></tr>';
}

// Data Generator with DATE formatting
$rs = new RecordSetDatabase();
$rs->Select('table_name');

while ($rs->DataGenerator()) {
    echo '<tr><td>' . $rs->formatFld('table_field') . '</td></tr>';
}

// This would return: <tr><td>25/10/2022 às 13:01:21</td></tr>

// INSERT data
$rs = new RecordSetDatabase();
$data = [
        'id' => (string) $rs->setAutoCode('id', 'user'),
        'name' => 'Tatys',
        'mail' => 'tatiss@gmail.com',
        'pass' => 's$2y$10$zKdjHmKbmJ6GVOIrApOiTO5sOpZSZkbHiscY9Kab/CnsKF.2dVt3S'
    ];
$rs->Insert($data, 'user');

// UPDATE 
$rs = new RecordSetDatabase();
$result = $rs->Update(['name' => 'Elvis Leite'], 'table_name', 'id = 1');

// DELETE 
$rs = new RecordSetDatabase();
$rs->Delete('user', 'id = 4');

// Get Field
$rs = new RecordSet();
echo $rs->getField('id', 'user', 'id = 1');

?>