Как проверить контекст приложения в Typo3 9? - PullRequest
0 голосов
/ 21 ноября 2018

Я бы хотел переключиться между контекстом приложения производства и разработки.Где в бэкэнде [BE] есть возможность проверить текущий контекст приложения и в конечном итоге переключить его?В предыдущих версиях Typo3 это было возможно в модуле установки.Пожалуйста, ответьте дружелюбному новичку.

Ответы [ 3 ]

0 голосов
/ 21 ноября 2018

Для получения контекста приложения вы можете использовать функцию getApplicationContext из GeneralUtility:

\TYPO3\CMS\Core\Utility\GeneralUtility::getApplicationContext()

Вы можете проверить, какой ApplicationContext используется с этими функциями:

$applicationContext = \TYPO3\CMS\Core\Utility\GeneralUtility::getApplicationContext();
$applicationContext->isDevelopment();
$applicationContext->isTesting();
$applicationContext->isProduction();

В качестве альтернативы вы можетеиспользуйте getenv('TYPO3_CONTEXT') для извлечения строки ApplicationContext (которая, возможно, не существует, если не установлена ​​где-либо еще, поэтому я рекомендую использовать функции ApplicationContext из GeneralUtility).

Вы также можете проверить в TYPO3Сделайте бэкенд, проверив информацию PHP в модуле Environment в инструментах администратора, где вы должны найти категорию Environment.

Контекст приложения по умолчанию, если он не установлен чем-либо еще, - Production.

* 1015.* Вы можете изменить его либо в файле .env с помощью TYPO3_CONTEXT=Development и загрузить его, например, с помощью пакета composer helhum / dotenv-connector, либо установить его в файле .htaccess с помощью SetEnv TYPO3_CONTEXT Development.Его даже можно определить в системе, но наиболее распространенный метод - через файл .env или .htaccess.
0 голосов
/ 23 ноября 2018

Также я нашел то, что искал в BE:

enter image description here

0 голосов
/ 21 ноября 2018

Существует переменная окружения, которую TYPO3 прослушивает для переключения своего собственного контекста.Он должен быть установлен в файле типа .htaccess: SetEnv TYPO3_CONTEXT Development

Если он установлен, вы можете получить к нему доступ с помощью getenv(TYPO3_CONTEXT) в php.

...