function OptionsAllowedValues::dynamicValues

Implements callback_allowed_values_function().

@todo This function violates the recommendation in options_allowed_values() to return a list of all possible values in any context when $items is NULL. Since this is not yet used for testing Views integration, that is alright for now. Fix this in https://www.drupal.org/node/2012130.

See also

options_allowed_values()

File

core/modules/options/tests/options_test/src/OptionsAllowedValues.php, line 45

Class

OptionsAllowedValues
Provide allowed values callback.

Namespace

Drupal\options_test

Code

public static function dynamicValues(FieldStorageDefinitionInterface $definition, ?FieldableEntityInterface $entity = NULL, &$cacheable = NULL) : array {
    $values = [];
    if (isset($entity)) {
        $cacheable = FALSE;
        $values = [
            $entity->label(),
            $entity->toUrl()
                ->toString(),
            $entity->uuid(),
            $entity->bundle(),
        ];
    }
    // We need the values of the entity as keys.
    return array_combine($values, $values);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.