Spec-Zone.ru › Symfony 3.2

LazyChoiceList

class LazyChoiceList implements ChoiceListInterface

Список выбора, загружающий значения выборочно.

Значения извлекаются с помощью экземпляра {@link ChoiceLoaderInterface}. Если вызываются только {@link getChoicesForValues()} или {@link getValuesForChoices()}, список выбора загружается частично для повышения производительности.

После вызова {@link getChoices()} или {@link getValues()} список загружается полностью.

Методы

__construct(ChoiceLoaderInterface $loader, callable $value = null)

Создаёт список с ленивой загрузкой, используя указанный загрузчик.

массив getChoices()

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

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

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

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

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

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

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

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

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

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

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

Детали

__construct(ChoiceLoaderInterface $loader, callable $value = null)

Создаёт список с ленивой загрузкой, используя указанный загрузчик.

Можно также передать лямбда-функцию для генерации значений выбора. Лямбда-функция получает значение выбора в качестве первого аргумента и ключ массива во втором.

Параметры

ChoiceLoaderInterface $loader Загрузчик выбора
лямбда-функция $value Лямбда-функция, генерирующая значения выбора

массив 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 и один раз для %%%CODE_BLOCK_7%%.

Значение возврата

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

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

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

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

Параметры

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

Значение возврата

массив Массив значений выбора

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

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

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

Параметры

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

Значение возврата

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

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.2/Symfony/Component/Form/ChoiceList/LazyChoiceList.html

Spec-Zone.ru

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