23 private static $mainScope =
'global';
41 if (empty($this->map)) {
46 if ($scope !==
null && $scope !== self::$mainScope) {
47 array_unshift($scopes, $scope);
49 $scopes[] = self::$mainScope;
50 foreach ($scopes as $scp) {
51 if (isset($this->map[$scp][
$name])) {
52 return $this->map[$scp][
$name];
65 $basename = basename(pathinfo($file, PATHINFO_DIRNAME));
66 return $basename ===
'etc' ?
'global' : $basename;
73 private function loadDiConfigs()
83 public function loadMap(array $diFiles = [])
85 if (empty($diFiles)) {
86 $diFiles = $this->loadDiConfigs();
89 foreach ($diFiles as $file) {
91 $doc =
new DOMDocument();
93 $nodes = $doc->getElementsByTagName(
'virtualType');
95 foreach ($nodes as $node) {
96 $name = $node->getAttribute(
'name');
97 $type = $node->getAttribute(
'type');
getType($name, $scope=null)
__construct(array $map=[])
if(!isset($_GET['name'])) $name