dantleech / symfony-form-array-to-delimited-string-transformer
Data transformer for SF form. Transforms delimited to string to array and vice-versa
Installs: 4 960
Dependents: 1
Suggesters: 0
Security: 0
Stars: 1
Watchers: 3
Forks: 5
Open Issues: 3
Requires
- php: >=5.3
- symfony/form: ~2.2
This package is auto-updated.
Last update: 2024-12-11 03:02:26 UTC
README
This is a data transformer for the Symfony form framework.
It is meant for transforming text fields containing delimited strings to arrays.
Usage
You can use the data transformer as follows:
$form->add( $builder->create('tags', 'text')->addModelTransformer( new ArrayToDelimitedStringTransformer() ) );
This will transform the tags
text field as follows:
// Tranform array('one', 'two', 'three', 'four') === 'one, two, three, four' // Reverse transform ' one , two , three, four,' === array('one', 'two', 'three', 'four')
Changing the delimiter
You can change the delimiting string with the first constructor argument:
new ArrayToDelimitedStringTransformer(';')
Will result in:
// Transform array('one', 'two', 'three', 'four') === 'one; two; three; four' // Reverse Transform 'one ; two;three ; four' => array('one', 'two', 'three')
Output padding
Additionally you can change the way in which the output is formatted with by setting the amount of whitespace (padding) before and after the text elements produced by a transformation:
new ArrayToDelimitedStringTransformer('%', 1, 1)
Will result in:
// Transform array('one', 'two', 'three', 'four') === 'one % two % three % four' // Reverse Transform 'one % two%three % four' => array('one', 'two', 'three')