ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
NewObjectTransformation.php
Go to the documentation of this file.
1 <?php
2 declare(strict_types=1);
3 /* Copyright (c) 1998-2019 ILIAS open source, Extended GPL, see docs/LICENSE */
4 
10 
13 
15 {
17 
18  private $className;
19 
23  public function __construct(string $className)
24  {
25  $this->className = $className;
26  }
27 
32  public function transform($from)
33  {
34  $class = new \ReflectionClass($this->className);
35  $instance = $class->newInstanceArgs($from);
36 
37  return $instance;
38  }
39 
44  public function __invoke($from)
45  {
46  return $this->transform($from);
47  }
48 }
__invoke($from)
Transformations should be callable.This MUST do the same as transform.
A transformation is a function from one datatype to another.
transform($from)
Perform the transformation.Please use this for transformations. It&#39;s more performant than calling inv...