MapNamingStrategy¶
Zend\Stdlib\Hydrator\NamingStrategy\MapNamingStrategy
Maps keys based on a given map.
Basic Usage¶
1 2 3 4 5 6 7 8 9 | $namingStrategy = new Zend\Stdlib\Hydrator\NamingStrategy\MapNamingStrategy(array(
'foo' => 'bar',
'baz' => 'bash'
));
echo $namingStrategy->hydrate('foo'); // outputs: bar
echo $namingStrategy->hydrate('baz'); // outputs: bash
echo $namingStrategy->extract('bar'); // outputs: foo
echo $namingStrategy->extract('bash'); // outputs: baz
|
This strategy can be used in hydrators to dictate how keys should be mapped:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | class Foo
{
public $bar;
}
$namingStrategy = new Zend\Stdlib\Hydrator\NamingStrategy\MapNamingStrategy(array(
'foo' => 'bar',
'baz' => 'bash'
));
$hydrator = new Zend\Stdlib\Hydrator\ObjectProperty();
$hydrator->setNamingStrategy($namingStrategy);
$foo = new Foo();
$hydrator->hydrate(array('foo' => 123),$foo);
print_r($foo); // Foo Object ( [bar] => 123 )
print_r($hydrator->extract($foo)); // Array ( [foo] => 123 )
|