Shift data around between different data stores.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

29 lines
477 B

<?php
namespace DbCopy\Transform;
class Group extends Transform
{
private $_transforms;
public function __construct(array $transforms)
{
$this->_transforms = $transforms;
}
public static function create(array $transforms): Group
{
return new Group($transforms);
}
public function __invoke($record): ?array
{
foreach ($this->_transforms as $transform)
{
$record = $transform($record);
if (!isset($record))
return null;
}
return $record;
}
}