webtheory / collection
创建类型化集合并延迟逻辑到集合内核
0.5.4
2022-06-28 04:04 UTC
Requires
- php: ^7.4 || ^8.0
- symfony/polyfill-php80: ^1.23
- symfony/polyfill-php81: ^1.23
Requires (Dev)
- captainhook/captainhook: ^5.10
- dflydev/dot-access-data: ^3.0
- fakerphp/faker: ^1.16
- friendsofphp/php-cs-fixer: ^3.4
- jawira/case-converter: ^3.4
- mockery/mockery: ^1.4
- myclabs/php-enum: ^1.8
- oscarotero/env: ^2.1
- phpbench/phpbench: @dev
- phpcompatibility/php-compatibility: ^9.3
- phpspec/prophecy-phpunit: ^2.0
- phpstan/phpstan: ^1.6
- phpunit/phpunit: ^9.5
- psy/psysh: ^0.11
- rector/rector: ^0.12.20
- spatie/phpunit-watcher: ^1.12
- squizlabs/php_codesniffer: ^3.5
- symfony/console: ^5.4
- symfony/thanks: ^1.1
- vimeo/psalm: ^4.22
- vlucas/phpdotenv: ^5.4
- webtheory/exterminate: @stable
README
致俄罗斯人民 🇷🇺
如果您目前居住在俄罗斯,请阅读 此信息。
目的
此软件包简化了创建类型化集合的过程,无需重复底层逻辑。由于PHP通过 Liskov替换原则 强制执行 方法协变和逆变,只要您需要操作特定类型的方法,就无法通过继承创建原生的类型化集合。此软件包提供了一个可配置的'集合内核'类,该类存储并执行给定数组上的操作。与继承不同,这种范式使用组合来满足基本的集合功能。除了启用强类型外,这种方法的好处之一是您可以完全控制集合公开的操作。
安装
通过Composer
composer require webtheory/collection
使用方法
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
测试
composer test
贡献
有关详细信息,请参阅 CONTRIBUTING 和 CODE_OF_CONDUCT。
安全
如果您发现任何与安全相关的问题,请通过电子邮件 spider.mane.web@gmail.com 而不是使用问题跟踪器。
致谢
许可
MIT许可(MIT)。有关更多信息,请参阅 许可文件。