166 if (!$this->methodInfoList[$method])
171 $actionParts = explode(self::METHOD_DELIMITER, $method);
173 foreach ($actionParts as $partScope)
175 $scopeFind .= ($scopeFind !==
'' ? self::METHOD_DELIMITER :
'') . $partScope;
176 $moduleFind = $this->
getAlias($scopeFind);
179 $module = $moduleFind;
184 if (!$scope || !$module)
186 $scope = array_shift($actionParts);
189 elseif ($module !== $scope)
191 $method = $module . self::METHOD_DELIMITER . $method;
198 mb_strpos($method, self::VENDOR_DELIMITER) ===
false
199 && mb_strpos($module, self::METHOD_DELIMITER) !==
false
202 $moduleParts = explode(self::METHOD_DELIMITER, $module);
203 array_pop($moduleParts);
204 $vendor = implode(self::METHOD_DELIMITER, $moduleParts);
206 $method = preg_replace(
'/^' . $vendor . self::METHOD_DELIMITER .
'/', $vendor . self::VENDOR_DELIMITER, $method);
209 $this->methodInfoList[$method] = [
210 'moduleId' => $module,
216 return $this->methodInfoList[$method];