Actualización

This commit is contained in:
Xes
2025-04-10 12:24:57 +02:00
parent 8969cc929d
commit 45420b6f0d
39760 changed files with 4303286 additions and 0 deletions

View File

@@ -0,0 +1,48 @@
<?php
namespace Ddeboer\DataImport\Step;
use Ddeboer\DataImport\Step;
use Symfony\Component\PropertyAccess\PropertyAccessor;
/**
* @author Markus Bachmann <markus.bachmann@bachi.biz>
*/
class ValueConverterStep implements Step
{
/**
* @var array
*/
private $converters = [];
/**
* @param string $property
* @param callable $converter
*
* @return $this
*/
public function add($property, callable $converter)
{
$this->converters[$property][] = $converter;
return $this;
}
/**
* {@inheritdoc}
*/
public function process(&$item)
{
$accessor = new PropertyAccessor();
foreach ($this->converters as $property => $converters) {
foreach ($converters as $converter) {
$orgValue = $accessor->getValue($item, $property);
$value = call_user_func($converter, $orgValue);
$accessor->setValue($item,$property,$value);
}
}
return true;
}
}