承接 componenta/filter 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

componenta/filter

Composer 安装命令:

composer require componenta/filter

包简介

Composable filters for Componenta class discovery and reflection workflows

README 文档

README

Composable filter objects for iterable data and reflection/class discovery.

Installation

composer require componenta/filter

Requirements

  • PHP 8.4+
  • componenta/arrayable

Related Packages

Package Why it matters here
componenta/arrayable Filters can expose their result through toArray().
componenta/class-finder Uses filters to select discovered classes, attributes, and reflection targets.
componenta/iterator Can combine filtering with replayable iteration.

What It Provides

  • FilterInterface: iterable filter contract with accept() and toArray().
  • AbstractFilter: base implementation for filtering an iterable source.
  • FilterableInterface and Filterable: immutable filter-chain support.
  • Concrete filters for scalars, arrays, strings, class names, reflection objects, files, ranges, callbacks, and composition.

Basic Usage

use Componenta\Filter\StringFilter;

$filter = new StringFilter(['one', 2, 'three']);

$filter->toArray(); // ['one', 'three']

Keys are not preserved by default:

$filter->toArray(preserveKeys: true);

Custom Criteria

use Componenta\Filter\CallbackFilter;

$filter = new CallbackFilter(
    static fn(mixed $value, string|int|null $key): bool => is_int($value) && $value > 10,
    [5, 15, 20],
);

$filter->toArray(); // [15, 20]

Filter Chains

Objects using Filterable should return new instances when filters are added or removed.

$next = $filterable->withFilter($filter);
$sameWithout = $next->withoutFilter($filter);

accept() uses AND semantics: every registered filter must accept the value.

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-06-14

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固