Typo3 如何正确初始化$GLOBALS[';TSFE';]

Typo3 如何正确初始化$GLOBALS[';TSFE';],typo3,typo3-extensions,Typo3,Typo3 Extensions,在我的TYPO3扩展中,我创建了一个自定义控制器类,它是从TYPO3后端的某个钩子调用的 在这个控制器中,我想从$GLOBALS['TSFE']获取一些东西,但当我执行var\u dump($GLOBALS['TSFE'])时,我收到null。问题是如何正确初始化$GLOBALS['TSFE']?尝试以下方法: $GLOBALS['TSFE'] = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Frontend\C

在我的TYPO3扩展中,我创建了一个自定义控制器类,它是从TYPO3后端的某个钩子调用的


在这个控制器中,我想从
$GLOBALS['TSFE']
获取一些东西,但当我执行
var\u dump($GLOBALS['TSFE'])
时,我收到
null
。问题是如何正确初始化
$GLOBALS['TSFE'
]?

尝试以下方法:

$GLOBALS['TSFE'] = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController',$GLOBALS['TYPO3_CONF_VARS'], $id, $type);

虽然$GLOBALS['TSFE']是TypoScriptFrontendController的实例化,并且您可以按照所述使用makeInstance正确地实例化它,但为什么要这样做

正如您所说,您正在后端工作,TypoScriptFrontendController为您提供了有关当前呈现页面的各种信息(在前端)

因此,虽然您可以实例化TSTypoScriptFrontendControllerFE,但通常不需要:TYPO3在前端实例化它


在实例化它之前,我首先检查:用例是什么?也许有更好的方法来做你想做的事情。

有人知道如何在TYPO3 10中做到这一点吗?