keerill/php-java-optional

PHP中Java8 Optional的完整实现

v1.0.2 2023-12-13 13:33 UTC

This package is auto-updated.

Last update: 2024-09-13 15:28:27 UTC


README

PHP中JAVA8 Optional的完整实现

Latest Version on Packagist GitHub Tests Action Status Total Downloads

使用方法

// ofEmpty refers Optional#empty() in java
// It is renamed as ofEmpty() because of empty() is reserved by PHP 
Optional::ofEmpty()
    ->isPresent(); // false

Optional::of('value')
    ->orElse('elseValue'); // value
 
Optional::ofEmpty()
    ->orElseThrow(fn () => new InvalidArgumentException()); // throws exception

Optional::ofEmpty()
    ->filter(fn ($a) => (int) $a); // function is not executed

Optional::of(5)
    ->map(fn ($a) => $a * 2)
    ->get(); // returns 10

Optional::ofEmpty()
    ->orElseGet(fn () => 10); // returns 10

安装

composer require keerill/php-java-optional

资源

测试

composer test

变更日志

请查看CHANGELOG以获取最近变更的更多信息。

致谢

许可证

MIT许可证(MIT)。请查看许可证文件以获取更多信息。