alisajjad/php7_mysql

一个简单的 PHP Mysqli 包装器(预处理语句),带有结果集合对象,提供基本功能。

1.0.0 2020-03-27 21:47 UTC

This package is auto-updated.

Last update: 2024-09-28 08:10:35 UTC


README

一个简单的 PHP Mysqli 包装器(预处理语句),带有结果集合对象,提供基本功能。

需求

  • PHP 7.2 或更高版本,且安装了 mysqli 扩展

安装

composer require alisajjad/php7_mysql

使用

初始化对象

$db = \PHP7MySql\MySql::init(
    'host',
    'username',
    'password',
    'php7_mysql',
    'prefix_of_db',
    'port',
    'socket'
);

执行简单查询

$db->exec($sql);

带参数

$result = $db->exec($sql, [$value1, $value2], 'is')

其中 $value1 是第一个值,使用绑定 i(int)$value2 是第二个值,使用 s(string)

$result 在成功时为 true,在失败时为 false。

查询结果

$result = $db->fetch($sql, [$value1], 'i')

$result 在成功时包含 MysqlResultCollection 对象,在失败时为 null。

MysqlResultCollection

所有查询结果都将存储在这个对象中。

常用方法

  • getAll() - 返回数组中的所有行
  • getRowsNum() - 返回行数
  • isEmpty() - 检查结果是否为空
  • first() - 返回第一行
  • last() - 返回最后一行
  • nth(int $index) - 返回第 $index 行
  • reverse() - 反转行顺序
  • merge(MysqlResultCollection $collection) - 将给定集合与当前集合合并。

第一行可以直接通过以下方式访问:

$result->first_row_column;

$result->first()->first_row_column;

使用循环

foreach ($collection as $index => $MySqlResultRow):
    echo $MySqlResultRow->column;
endforeach;

限制

  • MySql 对象尚不支持多查询。
  • 尚未在集合上应用排序深算法。