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