DefaultChoiceListFactory
class DefaultChoiceListFactory implements ChoiceListFactoryInterface
Реализация по умолчанию {@link ChoiceListFactoryInterface}.
Методы
| ChoiceListInterface | createListFromChoices(array|Traversable $choices, null|callable $value = null) Создаёт список выбора для заданных вариантов. | |
| ChoiceListInterface | createListFromFlippedChoices(array|Traversable $choices, null|callable $value = null, $triggerDeprecationNotice = true) deprecated Создаёт список выбора для заданных вариантов. | |
| ChoiceListInterface | createListFromLoader(ChoiceLoaderInterface $loader, null|callable $value = null) Создаёт список выбора, загружаемый с помощью заданного загрузчика. | |
| ChoiceListView | createView(ChoiceListInterface $list, null|array|callable $preferredChoices = null, null|callable $label = null, null|callable $index = null, null|callable $groupBy = null, null|array|callable $attr = null) Создаёт представление для заданного списка выбора. |
Подробности
ChoiceListInterface createListFromChoices(array|Traversable $choices, null|callable $value = null)
Создаёт список выбора для заданных вариантов.
Варианты должны быть переданы в значениях массива вариантов.
Можно передать лямбда-функцию для генерации значений вариантов. Лямбда-функция получает вариант в качестве первого и ключ массива в качестве второго аргумента.
Параметры
| array|Traversable | $choices | Варианты |
| null|callable | $value | Лямбда-функция, генерирующая значения вариантов |
Возвращаемое значение
| ChoiceListInterface | Список выбора |
ChoiceListInterface createListFromFlippedChoices(array|Traversable $choices, null|callable $value = null, $triggerDeprecationNotice = true) deprecated
deprecated
Создаёт список выбора для заданных вариантов.
Варианты должны быть переданы в ключах массива вариантов. Поскольку массив вариантов будет перевёрнут, элементы массива должны быть строками или целыми числами.
Можно передать лямбда-функцию для генерации значений вариантов. Лямбда-функция получает вариант в качестве первого и ключ массива в качестве второго аргумента.
Параметры
| array|Traversable | $choices | Варианты |
| null|callable | $value | Лямбда-функция, генерирующая значения вариантов |
| $triggerDeprecationNotice |
Возвращаемое значение
| ChoiceListInterface | Список выбора |
ChoiceListInterface createListFromLoader(ChoiceLoaderInterface $loader, null|callable $value = null)
Создаёт список выбора, загружаемый с помощью заданного загрузчика.
Можно передать лямбда-функцию для генерации значений вариантов. Лямбда-функция получает вариант в качестве первого и ключ массива в качестве второго аргумента.
Параметры
| ChoiceLoaderInterface | $loader | Загрузчик вариантов |
| null|callable | $value | Лямбда-функция, генерирующая значения вариантов |
Возвращаемое значение
| ChoiceListInterface | Список выбора |
ChoiceListView createView(ChoiceListInterface $list, null|array|callable $preferredChoices = null, null|callable $label = null, null|callable $index = null, null|callable $groupBy = null, null|array|callable $attr = null)
Создаёт представление для заданного списка выбора.
Для всех необязательных аргументов могут быть переданы лямбда-функции. Лямбда-функции получают вариант в качестве первого и ключ массива в качестве второго аргумента.
- Лямбда-функция для метки и имени должна возвращать сгенерированную метку/название выбора.
- Лямбда-функция для предпочтительных вариантов должна возвращать true или false, в зависимости от того, должен ли быть выбран вариант предпочтительным или нет.
- Лямбда-функция для группировки должна возвращать имя группы или null, если вариант не должен быть сгруппирован.
- Лямбда-функция для атрибутов должна возвращать массив HTML-атрибутов, которые будут вставлены в тег выбора.
Если лямбда-функция не передана, метки будут сгенерированы из ключей вариантов. Индексы представления по умолчанию будут сгенерированы с использованием нарастающего целого числа.
Предпочтительные варианты также могут быть переданы как массив. Каждый вариант, который содержится в этом массиве, будет помечен как предпочтительный.
Атрибуты могут быть переданы как многомерный массив. Ключи должны соответствовать ключам вариантов. Значения должны быть массивами HTML-атрибутов, которые должны быть добавлены к соответствующему варианту.
Параметры
| ChoiceListInterface | $list | Список выбора |
| null|array|callable | $preferredChoices | Предпочтительные варианты |
| null|callable | $label | Лямбда-функция, генерирующая метки вариантов |
| null|callable | $index | Лямбда-функция, генерирующая индексы представления |
| null|callable | $groupBy | Лямбда-функция, генерирующая имена групп |
| null|array|callable | $attr | Лямбда-функция, генерирующая HTML-атрибуты |
Возвращаемое значение
| ChoiceListView | Представление списка выбора |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/Form/ChoiceList/Factory/DefaultChoiceListFactory.html