ArrayToPartsTransformer
class ArrayToPartsTransformer implements 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()} для преобразования данных, полученных из запроса, в приемлемый формат для обработки данных/модельного слоя.
Этот метод должен уметь обрабатывать пустые значения. Обычно это будет пустая строка, но в зависимости от вашей реализации возможны и другие пустые значения (например, пустые строки). Причина в том, что преобразователи значений должны быть цепными. Если метод reverseTransform() первого преобразователя значений выводит пустую строку, второй преобразователь значений должен иметь возможность обработать это значение.
По соглашению, reverseTransform() должен возвращать NULL, если передана пустая строка.
Параметры
| $array |
Возвращаемое значение
| mixed | Значение в исходном представлении |
Исключения
| TransformationFailedException | При неудачном преобразовании. |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.2/Symfony/Component/Form/Extension/Core/DataTransformer/ArrayToPartsTransformer.html