Преобразователь ArrayToPartsTransformer
класс ArrayToPartsTransformer реализует DataTransformerInterface
Методы
| __construct(array $partMapping) | ||
| смешанный | transform($array) Преобразует значение из исходного представления в преобразованное представление. | |
| смешанный | reverseTransform($array) Преобразует значение из преобразованного представления в исходное представление. |
Подробности
__construct(array $partMapping)
Параметры
| массив | $partMapping |
смешанный transform($array)
Преобразует значение из исходного представления в преобразованное представление.
Этот метод вызывается дважды внутри поля формы:
- Когда поле формы инициализируется данными, присоединёнными из источника данных (объекта или массива).
- Когда данные из запроса отправляются с помощью {@link Form::submit()} для преобразования новых входных данных обратно в рендерируемый формат. Например, если у вас есть поле даты и вы отправляете '2009-10-10', вы можете принять это значение, так как его легко разобрать, но преобразователь всё равно запишет обратно "2009/10/10" в поле формы (для дальнейшего отображения или других целей).
Этот метод должен уметь обрабатывать пустые значения. Обычно это NULL, но в зависимости от вашей реализации возможны и другие пустые значения (например, пустые строки). Причина в том, что преобразователи значений должны быть цепочечными. Если метод transform() первого преобразователя значений выводит NULL, второй преобразователь значений должен уметь обработать это значение.
По соглашению, transform() должен возвращать пустую строку, если передан NULL.
Параметры
| $array |
Возвращаемое значение
| смешанный | Значение в преобразованном представлении |
Исключения
| TransformationFailedException | При ошибке преобразования. |
смешанный reverseTransform($array)
Преобразует значение из преобразованного представления в исходное представление.
Этот метод вызывается, когда вызывается {@link Form::submit()} для преобразования данных запроса в приемлемый формат для вашего слоя обработки данных/модели.
Этот метод должен уметь обрабатывать пустые значения. Обычно это пустая строка, но в зависимости от вашей реализации возможны и другие пустые значения (например, пустые строки). Причина в том, что преобразователи значений должны быть цепочечными. Если метод reverseTransform() первого преобразователя значений выводит пустую строку, второй преобразователь значений должен уметь обработать это значение.
По соглашению, reverseTransform() должен возвращать NULL, если передана пустая строка.
Параметры
| $array |
Возвращаемое значение
| смешанный | Значение в исходном представлении |
Исключения
| TransformationFailedException | При ошибке преобразования. |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.8/Symfony/Component/Form/Extension/Core/DataTransformer/ArrayToPartsTransformer.html