dreamcat/option

山寨了一个 Scala 语言的 Option 数据类型

v1.1.0 2019-07-13 14:06 UTC

This package is auto-updated.

Last update: 2022-06-16 09:01:13 UTC


README

山寨了一个Scala语言的Option数据类型,用来表示可选值的数据结构

composer安装

composer require dreamcat/option

示例

<?php

# 创建有值的对象
$some = new \DreamCat\OptionStruct\Some("value");
# 创建没有值的对象
$none = \DreamCat\OptionStruct\None::sInstance();

# 在使用时一般只传入Option类型
/** @var \DreamCat\OptionStruct\Option $opt */
# 判断是否有没有值
$opt->isDefined();
$opt->isEmpty();
# 获取值 要注意的是如果是None执行get会抛出异常
$value = $opt->get();
# 获取值,不存在返回默认值
$value = $opt->getOrElse($def);