本文整理汇总了PHP中TYPO3\Flow\Object\ObjectManagerInterface::getPackageKeyByObjectName方法的典型用法代码示例。如果您正苦于以下问题:PHP ObjectManagerInterface::getPackageKeyByObjectName方法的具体用法?PHP ObjectManagerInterface::getPackageKeyByObjectName怎么用?PHP ObjectManagerInterface::getPackageKeyByObjectName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TYPO3\Flow\Object\ObjectManagerInterface
的用法示例。
在下文中一共展示了ObjectManagerInterface::getPackageKeyByObjectName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setControllerObjectName
/**
* Explicitly sets the object name of the controller
*
* @param string $unknownCasedControllerObjectName The fully qualified controller object name
* @return void
* @throws \TYPO3\Flow\Object\Exception\UnknownObjectException
* @api
*/
public function setControllerObjectName($unknownCasedControllerObjectName)
{
$controllerObjectName = $this->objectManager->getCaseSensitiveObjectName($unknownCasedControllerObjectName);
if ($controllerObjectName === false) {
throw new UnknownObjectException('The object "' . $unknownCasedControllerObjectName . '" is not registered.', 1268844071);
}
$this->controllerPackageKey = $this->objectManager->getPackageKeyByObjectName($controllerObjectName);
$matches = array();
$subject = substr($controllerObjectName, strlen($this->controllerPackageKey) + 1);
preg_match('/
^(
Controller
|
(?P<subpackageKey>.+)\\\\Controller
)
\\\\(?P<controllerName>[a-z\\\\]+)Controller
$/ix', $subject, $matches);
$this->controllerSubpackageKey = isset($matches['subpackageKey']) ? $matches['subpackageKey'] : null;
$this->controllerName = $matches['controllerName'];
}