barnabynorman/result-set

使用过滤器和管理工具来管理项目集合

1.13.1 2024-07-01 07:02 UTC

This package is auto-updated.

Last update: 2024-10-01 00:06:42 UTC


README

ResultSet是一个围绕数组类型数据集的项目。我将其大部分作为类似Eloquent的类编写,用于查询存储在JSON文件中的数据。后来,我将其与SQL查询的输出一起使用,为每行数据库创建对象实例,并将它们存储在内存中的ResultSet中,这为我提供了数据和逻辑之间的抽象,以及快速访问数据的方法,而无需每次都编写查询。因为我在内存中保留了ResultSet的实例,所以我只会从数据库读取一次,并多次查询ResultSet,这使得它非常快!我之前编写的一个具有多个数据库查询(并且坦白说结构很差)的老项目,在使用ResultSet重连后,从秒级下降到毫秒级——这是在每个页面加载时都发生的!

显然,ResultSet并不适合每个人——可能有很多更好的工作方式,比如一开始就更好地结构化数据,以便减少查询次数、缓存,我还没有在大数据集上测试过,所以它可能运行得像狗一样!但我喜欢能够获取一组数据,用ResultSet创建它,并在我指尖上拥有非常强大的工具集来访问数据。

ResultSet本质上是一个php ArrayObject,提供了一组方法来过滤/查询和操作内部的数据,可以是对象或数组(或两者)。没有火箭,只有简单、老式的php,任何人都可以编写(主要是foreach循环),看看这里。它非常简单易用,只需创建一个新的对象或使用静态方法获取实例,然后传递数据并开始使用。

入门指南

使用Composer

$ composer require barnabynorman/result-set
{
    "require": {
        "barnabynorman/result-set": "^1.00"
    }
}
<?php
require 'vendor/autoload.php';

use ResultSet\ResultSet;

$rs = new ResultSet(['one', 'two', 'three']);
print_r($rs->first());

不使用Composer

但是使用 composer 非常简单!下载ResultSet的最新版本,将ZIP存档的内容放入您的项目目录中。然后需要ResultSet.php文件。

<?php
require 'path/to/ResultSet.php';

use ResultSet\ResultSet;

$rs = new ResultSet(['one', 'two', 'three']);
print_r($rs->first());