本文整理汇总了PHP中TYPO3\CMS\Core\Core\Bootstrap::initializeBackendRouter方法的典型用法代码示例。如果您正苦于以下问题:PHP Bootstrap::initializeBackendRouter方法的具体用法?PHP Bootstrap::initializeBackendRouter怎么用?PHP Bootstrap::initializeBackendRouter使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TYPO3\CMS\Core\Core\Bootstrap
的用法示例。
在下文中一共展示了Bootstrap::initializeBackendRouter方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: handleRequest
/**
* Handles a frontend request
*
* @param \Psr\Http\Message\ServerRequestInterface $request
* @return NULL|\Psr\Http\Message\ResponseInterface
*/
public function handleRequest(\Psr\Http\Message\ServerRequestInterface $request)
{
$response = null;
$this->request = $request;
$this->initializeTimeTracker();
// Hook to preprocess the current request:
if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/index_ts.php']['preprocessRequest'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/index_ts.php']['preprocessRequest'] as $hookFunction) {
$hookParameters = array();
GeneralUtility::callUserFunction($hookFunction, $hookParameters, $hookParameters);
}
unset($hookFunction);
unset($hookParameters);
}
$this->initializeController();
if ($GLOBALS['TYPO3_CONF_VARS']['FE']['pageUnavailable_force'] && !GeneralUtility::cmpIP(GeneralUtility::getIndpEnv('REMOTE_ADDR'), $GLOBALS['TYPO3_CONF_VARS']['SYS']['devIPmask'])) {
$this->controller->pageUnavailableAndExit('This page is temporarily unavailable.');
}
$this->controller->connectToDB();
$this->controller->sendRedirect();
// Output compression
// Remove any output produced until now
$this->bootstrap->endOutputBufferingAndCleanPreviousOutput();
$this->initializeOutputCompression();
// Initializing the Frontend User
$this->timeTracker->push('Front End user initialized', '');
$this->controller->initFEuser();
$this->timeTracker->pull();
// Initializing a possible logged-in Backend User
/** @var $GLOBALS['BE_USER'] \TYPO3\CMS\Backend\FrontendBackendUserAuthentication */
$GLOBALS['BE_USER'] = $this->controller->initializeBackendUser();
// Process the ID, type and other parameters.
// After this point we have an array, $page in TSFE, which is the page-record
// of the current page, $id.
$this->timeTracker->push('Process ID', '');
// Initialize admin panel since simulation settings are required here:
if ($this->controller->isBackendUserLoggedIn()) {
$GLOBALS['BE_USER']->initializeAdminPanel();
$this->bootstrap->initializeBackendRouter()->loadExtensionTables();
} else {
$this->bootstrap->loadCachedTca();
}
$this->controller->checkAlternativeIdMethods();
$this->controller->clear_preview();
$this->controller->determineId();
// Now, if there is a backend user logged in and he has NO access to this page,
// then re-evaluate the id shown! _GP('ADMCMD_noBeUser') is placed here because
// \TYPO3\CMS\Version\Hook\PreviewHook might need to know if a backend user is logged in.
if ($this->controller->isBackendUserLoggedIn() && (!$GLOBALS['BE_USER']->extPageReadAccess($this->controller->page) || GeneralUtility::_GP('ADMCMD_noBeUser'))) {
// Remove user
unset($GLOBALS['BE_USER']);
$this->controller->beUserLogin = false;
// Re-evaluate the page-id.
$this->controller->checkAlternativeIdMethods();
$this->controller->clear_preview();
$this->controller->determineId();
}
$this->controller->makeCacheHash();
$this->timeTracker->pull();
// Admin Panel & Frontend editing
if ($this->controller->isBackendUserLoggedIn()) {
$GLOBALS['BE_USER']->initializeFrontendEdit();
if ($GLOBALS['BE_USER']->adminPanel instanceof AdminPanelView) {
$this->bootstrap->initializeLanguageObject();
}
if ($GLOBALS['BE_USER']->frontendEdit instanceof FrontendEditingController) {
$GLOBALS['BE_USER']->frontendEdit->initConfigOptions();
}
}
// Starts the template
$this->timeTracker->push('Start Template', '');
$this->controller->initTemplate();
$this->timeTracker->pull();
// Get from cache
$this->timeTracker->push('Get Page from cache', '');
$this->controller->getFromCache();
$this->timeTracker->pull();
// Get config if not already gotten
// After this, we should have a valid config-array ready
$this->controller->getConfigArray();
// Setting language and locale
$this->timeTracker->push('Setting language and locale', '');
$this->controller->settingLanguage();
$this->controller->settingLocale();
$this->timeTracker->pull();
// Convert POST data to utf-8 for internal processing if metaCharset is different
$this->controller->convPOSTCharset();
$this->controller->initializeRedirectUrlHandlers();
$this->controller->handleDataSubmission();
// Check for shortcut page and redirect
$this->controller->checkPageForShortcutRedirect();
$this->controller->checkPageForMountpointRedirect();
// Generate page
$this->controller->setUrlIdToken();
//.........这里部分代码省略.........