Open
Description
Hi,
/**
* Creates a option if the `$key` exists in `$array`
*
* ```php
* $some = Option::fromArray(['hello' => ' world'], 'hello');
* $none = Option::fromArray(['hello' => ' world'], 'nope');
* ```
* _Notes:_
*
* - Returns `Option<T>`
* @psalm-pure
* @psalm-mutation-free
*
* @psalm-param array<array-key, mixed> $array
* @psalm-param array-key $key The key of the array
* @psalm-return Option<T>
**/
public static function fromArray(array $array, $key): self {
if (isset($array[$key])) {
return self::some($array[$key]);
}
return self::none();
}
Using isset
will return false when a key exist with a null value. array_key_exists
does what the method description says.
Metadata
Metadata
Assignees
Labels
No labels