rikmeijer / functional-php
PHP的功能原语
1.0
2024-08-29 08:01 UTC
Requires
- php: ^7.1|~8
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.17
- phpunit/phpunit: ^7.0 || ^8.0 || ^9.5
- squizlabs/php_codesniffer: ~3.0
README
注意: functional-php曾经包含一个C扩展,该扩展以原生方式实现了大多数函数。由于与维护成本相比,性能差异并不大,因此已被删除。
一组PHP的功能原语,深受Scala的可遍历集合、Dojo的数组函数和Underscore.js的启发。
- 与数组和实现接口
Traversable
的任何内容一起工作 - 一致的接口:对于接受集合和回调的函数,第一个参数始终是集合,然后是回调。回调始终传递
$value
、$index
、$collection
。严格比较是默认设置,但可以更改 - 调用5.3闭包以及常规回调
- 所有函数都位于命名空间
Functional
中,以避免与其他扩展或库发生冲突
安装
在项目根目录中运行以下命令
composer require lstrojny/functional-php
文档
贡献
- 分叉并
git clone
项目 - 通过
composer install
安装依赖 - 通过
composer run tests
运行测试 - 编写代码并创建PR
邮件列表
- 一般帮助和发展列表:http://groups.google.com/group/functional-php
- 提交列表:http://groups.google.com/group/functional-php-commits
感谢
- Richard Quadling和Pierre Joye在Windows构建方面的帮助
- David Soria Parra提供了各种想法和
Functional\flatten()
的用户空间版本 - Max Beutel为
Functional\unique()
、Functional\invoke_first()
、Functional\invoke_last()
以及所有讨论 - An Phan对许多优秀的贡献