LazyChoiceList
class LazyChoiceList implements ChoiceListInterface
Список выбора, который загружает свои значения лениво.
Значения загружаются с помощью экземпляра {@link ChoiceLoaderInterface}. Если вызываются только {@link getChoicesForValues()} или {@link getValuesForChoices()}, список выбора загружается частично для повышения производительности.
После вызова {@link getChoices()} или {@link getValues()} список загружается полностью.
Методы
| __construct(ChoiceLoaderInterface $loader, null|callable $value = null) Создаёт лениво загружаемый список с помощью заданного загрузчика. | ||
| массив | getChoices() Возвращает все выбираемые значения. | |
| массив строк | getValues() Возвращает значения для значений выбора. | |
| массив строк | getStructuredValues() Возвращает значения в структуре, первоначально переданной в список. В отличие от {@link getValues()}, результат индексируется по исходным ключам значений выбора. Если исходный массив содержал вложенные массивы, эти вложенные массивы также представлены здесь: В этом примере, результатом этого метода является: | |
| массив целых чисел/строк | getOriginalKeys() Возвращает исходные ключи значений выбора. Исходные ключи — это ключи массива выбора, которые были переданы в опцию "choice" типа выбора. Обратите внимание, что этот массив может содержать дубликаты, если опция "choice" содержала группы выбора: В этом примере, исходный ключ 0 появляется дважды, один раз для | |
| массив | getChoicesForValues(array $values) Возвращает значения выбора, соответствующие заданным значениям. Значения выбора возвращаются с теми же ключами и в том же порядке, что и соответствующие значения в заданном массиве. | |
| массив строк | getValuesForChoices(array $choices) Возвращает значения, соответствующие заданным значениям выбора. Значения возвращаются с теми же ключами и в том же порядке, что и соответствующие значения выбора в заданном массиве. |
Подробное описание
__construct(ChoiceLoaderInterface $loader, null|callable $value = null)
Создаёт лениво загружаемый список с помощью заданного загрузчика.
Необязательно, можно передать лямбда-функцию для генерации значений выбора. Лямбда-функция получает значение выбора в качестве первого и ключ массива как второй аргумент.
Параметры
| ChoiceLoaderInterface | $loader | Загрузчик значений выбора |
| null|callable | $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 и один раз для null.
Значение возврата
| массив целых чисел/строк | Исходные ключи выбора, индексированные соответствующими значениями выбора |
массив getChoicesForValues(array $values)
Возвращает значения выбора, соответствующие заданным значениям.
Значения выбора возвращаются с теми же ключами и в том же порядке, что и соответствующие значения в заданном массиве.
Параметры
| массив | $values | Массив значений выбора. Несуществующие значения в этом массиве игнорируются |
Значение возврата
| массив | Массив значений выбора |
массив строк getValuesForChoices(array $choices)
Возвращает значения, соответствующие заданным значениям выбора.
Значения возвращаются с теми же ключами и в том же порядке, что и соответствующие значения выбора в заданном массиве.
Параметры
| массив | $choices | Массив значений выбора. Несуществующие значения в этом массиве игнорируются |
Значение возврата
| массив строк | Массив значений выбора |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/Form/ChoiceList/LazyChoiceList.html