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