final public static function membersBy(
        $property,
        $value,
        $isCaseSensitive = null
    ) {
        if (null === $isCaseSensitive) {
            $isCaseSensitive = true;
        }

        if (!$isCaseSensitive && is_scalar($value)) {
            $value = strtoupper(strval($value));
        }

        return static::membersByPredicate(
            function (MultitonInterface $member) use (
                $property,
                $value,
                $isCaseSensitive
            ) {
                $memberValue = $member->{$property}();

                if (!$isCaseSensitive && is_scalar($memberValue)) {
                    $memberValue = strtoupper(strval($memberValue));
                }

                return $memberValue === $value;
            }
        );
    }
final public static function membersBy(
        $property,
        $value,
        $isCaseSensitive = null
    ) {
        if (null === $isCaseSensitive) {
            $isCaseSensitive = true;
        }

        if (!$isCaseSensitive && is_scalar($value)) {
            $value = strtoupper(strval($value));
        }

        return static::membersByPredicate(
            function (MultitonInterface $member) use (
                $property,
                $value,
                $isCaseSensitive
            ) {
                $memberValue = $member->{$property}();

                if (!$isCaseSensitive && is_scalar($memberValue)) {
                    $memberValue = strtoupper(strval($memberValue));
                }

                return $memberValue === $value;
            }
        );
    }
final public static function membersBy ( $ property , $ value , $ isCaseSensitive = null ) { if ( null === $ isCaseSensitive ) { $ isCaseSensitive = true ; } if ( ! $ isCaseSensitive && is_scalar ( $ value ) ) { $ value = strtoupper ( strval ( $ value ) ) ; } return static :: membersByPredicate ( function ( MultitonInterface $ member ) use ( $ property , $ value , $ isCaseSensitive ) { $ memberValue = $ member -> { $ property } ( ) ; if ( ! $ isCaseSensitive && is_scalar ( $ memberValue ) ) { $ memberValue = strtoupper ( strval ( $ memberValue ) ) ; } return $ memberValue === $ value ; } ) ; }
Returns a set of members by comparison with the result of an accessor
method.

@api

@param string    $property        The name of the property (accessor method) to match.
@param mixed     $value           The value to match.
@param bool|null $isCaseSensitive True if the search should be case sensitive.

@return array<string,static> All members for which $member->{$property}() === $value.
Returns a set of members by comparison with the result of an accessor method .