cdn77 / functions
PHP 函数
0.2.5
2024-09-12 12:06 UTC
Requires
- php: ^8.2
- ext-ds: *
- azjezz/psl: ^2.9 || ^3.0
Requires (Dev)
- cdn77/coding-standard: ^7.0
- ergebnis/composer-normalize: ^2.23
- infection/infection: ^0.29.0
- php-ds/php-ds: ^1.4
- phpstan/extension-installer: ^1.1
- phpstan/phpstan: ^1.11
- phpstan/phpstan-phpunit: ^1.0.0
- phpunit/phpunit: ^11.0
- shipmonk/composer-dependency-analyser: ^1.5
README
函数
absurd()
不应该被调用的函数。在穷举匹配中的 default
情况下很有用。
assert_return()
通过表达式断言值并返回它。
当你想在行内断言时很有用,例如你可以保持箭头函数在原位。
它内部使用原生的 assert()
。
use function Cdn77\Functions\assert_return; array_map( fn (mixed $value) => new RequiresInt(assert_return($value, is_int(...))), [1, 2, 3] );
noop()
什么都不做。例如,对于当前只支持块中单行表达式的 match
表达式很有用。
match ($val) { '1' => throw new Exception, '2' => foo(), default => noop(), };
Ds
mapFromEntries()
从一个条目可迭代的对象中创建一个映射。
use function Cdn77\Functions\mapFromEntries; $map = mapFromEntries([ ['foo', 'bar'], ['baz', 'qux'], ]); assert($map->get('foo') === 'bar');
可迭代对象
find()
在可迭代对象中查找一个值。
use function Cdn77\Functions\Iterable\find; $iterable = [0, 1, 2, 3]; $option = find($iterable, static fn (mixed $_, int $value) => $value < 2); assert($option->unwrap() === 0);