Skip to content

[Bug] From array doesn't support null values #44

@Gounlaf

Description

@Gounlaf

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

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions