#! /usr/bin/env php */ define('TYPO3_MODE', 'BE'); define('TYPO3_cliMode', TRUE); // We use require instead of require_once here so we get a fatal error if classes/Bootstrap.php is accidentally included twice // (which would indicate a clear bug). require __DIR__ . '/sysext/core/Classes/Core/CliBootstrap.php'; \TYPO3\CMS\Core\Core\CliBootstrap::checkEnvironmentOrDie(); require __DIR__ . '/sysext/core/Classes/Core/Bootstrap.php'; \TYPO3\CMS\Core\Core\Bootstrap::getInstance() ->baseSetup('typo3/') ->populateLocalConfiguration() ->registerExtDirectComponents() ->initializeCachingFramework() ->registerAutoloader() ->checkUtf8DatabaseSettingsOrDie() ->transferDeprecatedCurlSettings() ->setCacheHashOptions() ->enforceCorrectProxyAuthScheme() ->setDefaultTimezone() ->initializeL10nLocales() ->configureImageProcessingOptions() ->convertPageNotFoundHandlingToBoolean() ->registerGlobalDebugFunctions() ->registerSwiftMailer() ->configureExceptionHandling() ->setMemoryLimit() ->defineTypo3RequestTypes() ->populateTypo3LoadedExtGlobal(TRUE) ->loadAdditionalConfigurationFromExtensions(TRUE) ->deprecationLogForOldExtCacheSetting() ->initializeExceptionHandling() ->setFinalCachingFrameworkCacheConfiguration() ->defineLoggingAndExceptionConstants() ->unsetReservedGlobalVariables() ->initializeTypo3DbGlobal(TRUE); \TYPO3\CMS\Core\Core\CliBootstrap::initializeCliKeyOrDie(); \TYPO3\CMS\Core\Core\Bootstrap::getInstance() ->loadExtensionTables(TRUE) ->initializeBackendUser() ->initializeBackendUserMounts() ->initializeLanguageObject(); // Make sure output is not buffered, so command-line output and interaction can take place \TYPO3\CMS\Core\Utility\GeneralUtility::flushOutputBuffers(); try { include(TYPO3_cliInclude); } catch (\Exception $e) { fwrite(STDERR, $e->getMessage() . LF); exit(99); } \TYPO3\CMS\Core\Core\Bootstrap::getInstance()->shutdown(); ?>