devrtips/listr
Composer 安装命令:
composer require devrtips/listr
包简介
Listem is an easy to use (but highly customizable) data sorting and filtering module for PHP, that can be used for data lists/tables/grids, reports or APIs.
README 文档
README
Listem is an easy to use (but highly customizable) data sorting and filtering module for PHP >= 5.4, which can be used for data lists/tables/grids, reports or APIs.
Installation
Make sure you have Composer installed and run the below command from your project directory.
composer require listem/listem-php
General Usage
Set configurations and initialize.
$config = [ 'filters' => [ 'name' => ['label' => 'Title'], 'content' => ['label' => 'Content', 'column' => ['content', 'summary']], 'state' => [ 'label' => 'State', 'type' => Listem\Filter::ENUM_INPUT, 'enums' => [ 1 => 'Active', 0 => 'Draft' ] ], 'created_at' => ['label' => 'Created On', 'type' => Listem\Filter::DATE], 'category' => ['label' => 'Category', 'type' => Listem\Filter::ENUM_SELECT] ], 'sorters' => [ 'name' => ['label' => 'Full Name', 'column' => 'users.name'], 'active' => ['label' => 'Active', 'column' => 'users.active'] ] ]; $list = new Listem\ListEntity($config, new Listem\Conditions\MySQL, new Listem\Params\Get); $filters = $list->getFilters(); $sorters = $list>getSorters(); $filterConditions = $filters->getConditions(); $sorterConditions = $sorters->getConditions(); $data = BlogPost::whereRaw($condition); ->orderBy($sorterConditions['column'], $sorterConditions['side']) ->get() ->toArray();
Pass $filters and $sorters to your view and render them easily.
<form method="GET" class="form-horizontal"> <!-- Should be submitted to the current page --> <?php foreach($filters as $filter): $filter = new Listem\Html\Decorators\Bootstrap3($filter); ?> <div class="form-group"> <?php echo $filter->renderLabel() ?> <?php echo $filter->renderFormElem() ?> </div> <?php endforeach; ?> <button type="reset">Reset</button> <button type="submit">Filter</button> </form> <table> <thead> <tr> <th><?php $sorters->render('title') ?></th> <th>Slug</th> <th><?php $sorters->render('content') ?></th> <!-- Or you can render parts of it, so you have more control --> <th> <a href="<?php $sorters->getLink('created_at') ?>"> <?php $sorters->getLabel('created_at') ?> <span class="<?php $sorters->sorted('created_at') ? 'up' : 'down' ?>"></span> </a> </th> </tr> </thead> ...
Documentation
Contributing
Please see CONTRIBUTING and CODE_OF_CONDUCT for details.
License
The MIT License (MIT). Please see License File for more information.
devrtips/listr 适用场景与选型建议
devrtips/listr 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 10 次下载、GitHub Stars 达 5, 最近一次更新时间为 2015 年 10 月 19 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 devrtips/listr 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 devrtips/listr 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 10
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 5
- 点击次数: 20
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-10-19