ILIAS  trunk Revision v12.0_alpha-377-g3641b37b9db
UsernameProviderFactory.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
24{
29 public function fromClassNames(array $class_names): array
30 {
31 $instances = [];
32 foreach ($class_names as $class) {
33 if (!\is_string($class) || !class_exists($class)) {
34 continue;
35 }
36
37 try {
38 $obj = new $class();
39 } catch (\Throwable) {
40 continue;
41 }
42
43 if ($obj instanceof UsernameProvider) {
44 $instances[] = $obj;
45 }
46 }
47
48 return $instances;
49 }
50}