Spec-Zone.ru › Symfony 4.1

ArrayChoiceList

class ArrayChoiceList implements ChoiceListInterface

Список вариантов с произвольными типами данных.

Пользователь этого класса отвечает за присвоение строковых значений вариантам. И варианты, и их значения передаются в конструктор. Каждый вариант должен иметь соответствующее значение (с тем же ключом массива) в массиве значений.

Свойства

protected массив $choices Варианты в списке.
protected массив $structuredValues Значения, индексированные исходными ключами.
protected массив целых чисел или строк $originalKeys Исходные ключи массива вариантов.
protected обратный вызов $valueCallback Обратный вызов для создания значения для варианта.

Методы

__construct(iterable $choices, callable $value = null)

Создаёт список с заданными вариантами и значениями.

массив getChoices()

Возвращает все выбираемые варианты.

массив строк getValues()

Возвращает значения для вариантов.

массив строк getStructuredValues()

Возвращает значения в структуре, изначально переданной в список.

массив целых чисел или строк getOriginalKeys()

Возвращает исходные ключи вариантов.

массив getChoicesForValues(array $values)

Возвращает варианты, соответствующие заданным значениям.

массив строк getValuesForChoices(array $choices)

Возвращает значения, соответствующие заданным вариантам.

flatten(array $choices, callable $value, array $choicesByValues, array $keysByValues, array $structuredValues)

Разворачивает массив в заданные переменные вывода.

Подробное описание

__construct(iterable $choices, callable $value = null)

Создаёт список с заданными вариантами и значениями.

Переданный массив вариантов должен иметь те же ключи массива, что и массив значений.

Параметры

iterable $choices Выбираемые варианты
callable $value Обратный вызов для создания значения для варианта. Если null передано, в качестве значений используются нарастающие целые числа

массив getChoices()

Возвращает все выбираемые варианты.

Значение результата

массив Выбираемые варианты, индексированные соответствующими значениями

массив строк getValues()

Возвращает значения для вариантов.

Значения являются строками, не содержащими дубликатов.

Значение результата

массив строк Значения вариантов

массив строк getStructuredValues()

Возвращает значения в структуре, изначально переданной в список.

В отличие от {@link getValues()}, результат индексируется исходными ключами вариантов. Если исходный массив содержал вложенные массивы, эти вложенные массивы также представлены здесь:

$form->add('field', 'choice', array(
    'choices' => array(
        'Decided' => array('Yes' => true, 'No' => false),
        'Undecided' => array('Maybe' => null),
    ),
));

В этом примере результат этого метода:

array(
    'Decided' => array('Yes' => '0', 'No' => '1'),
    'Undecided' => array('Maybe' => '2'),
)

Значение результата

массив строк Значения вариантов

массив целых чисел или строк getOriginalKeys()

Возвращает исходные ключи вариантов.

Исходные ключи — это ключи массива вариантов, которые были переданы в опции "choice" типа выбора. Обратите внимание, что этот массив может содержать дубликаты, если опция "choice" содержала группы вариантов:

$form->add('field', 'choice', array(
    'choices' => array(
        'Decided' => array(true, false),
        'Undecided' => array(null),
    ),
));

В этом примере исходный ключ 0 появляется дважды, один раз для true и один раз для null.

Значение результата

массив целых чисел или строк Исходные ключи вариантов, индексированные соответствующими значениями вариантов

массив getChoicesForValues(array $values)

Возвращает варианты, соответствующие заданным значениям.

Варианты возвращаются с теми же ключами и в том же порядке, что и соответствующие значения в переданном массиве.

Параметры

массив $values Массив значений вариантов. Отсутствующие значения в этом массиве игнорируются

Значение результата

массив Массив вариантов

массив строк getValuesForChoices(array $choices)

Возвращает значения, соответствующие заданным вариантам.

Значения возвращаются с теми же ключами и в том же порядке, что и соответствующие варианты в переданном массиве.

Параметры

массив $choices Массив вариантов. Отсутствующие варианты в этом массиве игнорируются

Значение результата

массив строк Массив значений вариантов

protected flatten(array $choices, callable $value, array $choicesByValues, array $keysByValues, array $structuredValues)

Разворачивает массив в заданные переменные вывода.

Параметры

массив $choices Массив для разворота
callable $value Обратный вызов для генерации значений вариантов
массив $choicesByValues Развороченные варианты, индексированные соответствующими значениями
массив $keysByValues Исходные ключи, индексированные соответствующими значениями
массив $structuredValues Значения, индексированные исходными ключами

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/Form/ChoiceList/ArrayChoiceList.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API